Название: не компилится демон Отправлено: exZhuk от Июль 10, 2007, 14:18 писал его не я, а какой то чел, который помочь с проблемой разобраться не может, мне его компильнуть надо после мэйка вылазит вот что:
linux-portak:/home/soft/PORTAL-2.0/Source/Daemon/PortalDaemo n # make g++ -Wl,-rpath,/usr/local/Trolltech/Qt-4.3.0/lib -o ../../debug/PortalDaemon debug/PortalLaunchBarWidget.o debug/main.o debug/qtservice.o debug/qtservice_unix.o debug/moc_PortalLaunchBarWidget.o debug/qrc_common.o -L/usr/local/Trolltech/Qt-4.3.0/lib -lQtGui -L/usr/local/Trolltech/Qt-4.3.0/lib -L/home/soft/PORTAL-2.0/Source/PortalLib -lPortalCommonLib -lPortalMdiLib -L/usr/X11R6/lib -lpng -lSM -lICE -pthread -L/opt/gnome/lib -pthread -lXi -lXrender -lXrandr -lXfixes -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 -lQtCore -lz -lm -pthread -lgthread-2.0 -lglib-2.0 -lrt -ldl -lpthread debug/main.o: In function `InteractiveService::processCommand(int)': /home/soft/PORTAL-2.0/Source/Daemon/PortalDaemon/main.cpp:71 : undefined reference to `Daemon::showMessageEx(QString, QString, int)' /home/soft/PORTAL-2.0/Source/Daemon/PortalDaemon/main.cpp:74 : undefined reference to `Daemon::showMessageEx(QString, QString, int)' /home/soft/PORTAL-2.0/Source/Daemon/PortalDaemon/main.cpp:77 : undefined reference to `Daemon::showMessageEx(QString, QString, int)' debug/main.o: In function `InteractiveService::start()': /home/soft/PORTAL-2.0/Source/Daemon/PortalDaemon/main.cpp:47 : undefined reference to `Daemon::Daemon(QObject*)' debug/qtservice_unix.o: In function `sendCmd': ../../common/qtservice/qtservice_unix.cpp:78: undefined reference to `QtUnixSocket::QtUnixSocket(QObject*)' ../../common/qtservice/qtservice_unix.cpp:79: undefined reference to `QtUnixSocket::connectTo(QString const&)' ../../common/qtservice/qtservice_unix.cpp:81: undefined reference to `QAbstractSocket::flush()' ../../common/qtservice/qtservice_unix.cpp:82: undefined reference to `QAbstractSocket::waitForReadyRead(int)' ../../common/qtservice/qtservice_unix.cpp:86: undefined reference to `QAbstractSocket::close()' debug/qtservice_unix.o: In function `QtServiceController::isRunning() const': ../../common/qtservice/qtservice_unix.cpp:242: undefined reference to `QtUnixSocket::QtUnixSocket(QObject*)' ../../common/qtservice/qtservice_unix.cpp:243: undefined reference to `QtUnixSocket::connectTo(QString const&)' debug/qtservice_unix.o: In function `QtServiceBasePrivate::sysCleanup()': ../../common/qtservice/qtservice_unix.cpp:412: undefined reference to `QtUnixServerSocket::close()' debug/qtservice_unix.o: In function `QtServiceBasePrivate::sysSetPath()': ../../common/qtservice/qtservice_unix.cpp:406: undefined reference to `QtUnixServerSocket::setPath(QString const&)' debug/qtservice_unix.o: In function `QtServiceSysPrivate::qt_metacast(char const*)': debug/qtservice_unix.moc:55: undefined reference to `QtUnixServerSocket::qt_metacast(char const*)' debug/qtservice_unix.o: In function `QtServiceSysPrivate::slotReady()': ../../common/qtservice/qtservice_unix.cpp:331: undefined reference to `QAbstractSocket::flush()' debug/qtservice_unix.o: In function `QtServiceSysPrivate::qt_metacall(QMetaObject::Call, int, void**)': debug/qtservice_unix.moc:60: undefined reference to `QtUnixServerSocket::qt_metacall(QMetaObject::Call, int, void**)' debug/qtservice_unix.o: In function `QtServiceSysPrivate::incomingConnection(int)': ../../common/qtservice/qtservice_unix.cpp:289: undefined reference to `QTcpSocket::QTcpSocket(QObject*)' ../../common/qtservice/qtservice_unix.cpp:290: undefined reference to `QAbstractSocket::setSocketDescriptor(int, QAbstractSocket::SocketState, QFlags<QIODevice::OpenModeFlag>)' debug/qtservice_unix.o: In function `QtServiceSysPrivate': ../../common/qtservice/qtservice_unix.cpp:277: undefined reference to `QtUnixServerSocket::QtUnixServerSocket(QObject*)' ../../common/qtservice/qtservice_unix.cpp:277: undefined reference to `QtUnixServerSocket::QtUnixServerSocket(QObject*)' debug/qtservice_unix.o:(.rodata+0x25c): undefined reference to `QtUnixServerSocket::staticMetaObject' debug/qtservice_unix.o: In function `~QtUnixSocket': ../../common/qtservice/qtunixsocket.h:28: undefined reference to `vtable for QtUnixSocket' ../../common/qtservice/qtunixsocket.h:28: undefined reference to `QTcpSocket::~QTcpSocket()' debug/qtservice_unix.o: In function `~QtUnixServerSocket': ../../common/qtservice/qtunixserversocket.h:28: undefined reference to `vtable for QtUnixServerSocket' ../../common/qtservice/qtunixserversocket.h:28: undefined reference to `QTcpServer::~QTcpServer()' ../../common/qtservice/qtunixserversocket.h:28: undefined reference to `QTcpServer::~QTcpServer()' debug/qtservice_unix.o:(.rodata._ZTV19QtServiceSysPrivate[vt able for QtServiceSysPrivate]+0x38): undefined reference to `QTcpServer::hasPendingConnections() const' debug/qtservice_unix.o:(.rodata._ZTV19QtServiceSysPrivate[vt able for QtServiceSysPrivate]+0x3c): undefined reference to `QTcpServer::nextPendingConnection()' debug/qtservice_unix.o:(.rodata._ZTI19QtServiceSysPrivate[ty peinfo for QtServiceSysPrivate]+0x8): undefined reference to `typeinfo for QtUnixServerSocket' collect2: ld returned 1 exit status make: *** [../../debug/PortalDaemon] Ошибка 1 я посмотрел форумы и чаще всего такие проблемы возникают если не хватет какой нить библиотеки. так вот если это так то как определить какой и как её подключить(подлинковать) и вообще не могли бы дать ссылочку где написано как линковать и что это такое? ну или может какая другая проблема? qt 4.3.0 suse 10.1 Спасибо. Название: Re: не компилится демон Отправлено: sandy от Июль 12, 2007, 13:02 В твоем makefile нет или неверно указаны библиотеки, в которых эти функции должны находиться
Название: не компилится демон Отправлено: exZhuk от Июль 12, 2007, 15:47 ну у меня есть библиотека libPortalCommonLib.а в которой вроде есть эти функции, но как туда её затащить я не знаю, точнее я её затаскиваю туда в так :
Цитировать LIBS = $(SUBLIBS) -L/usr/local/Trolltech/Qt-4.3.0/lib -lQtGui -lQt3Support -L/home/soft/PORTAL-2.0/Source/PortalLib -lPortalCommonLib но эффект нулевой Название: Re: не компилится демон Отправлено: fightcat от Сентябрь 13, 2007, 11:36 Для проекта на qt лучше не править Makefile, а создать файл имяпроекта.pro командой qmake -project в директории с сорцами, после чего отредактировать - как и что туда записывать наиподробнейшим образом описано в QT-ассистенте.
Потом командой qmake на основе этого файла проекта рожается Makefile, который должен сделать все без ошибок. |