сборка qutim 0.3 под freebsd

Модератор: Fastman

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Himik
ефрейтор
Сообщения: 65
Зарегистрирован: 2008-03-26 14:52:58
Откуда: UA, Крым, Саки

сборка qutim 0.3 под freebsd

Непрочитанное сообщение Himik » 2012-05-21 11:23:52

Пытаюсь собрать кутим из гита по вики http://wiki.qutim.org/ru/building_from_git.
На этапе make появляется ошибка:

Код: Выделить всё

Linking CXX shared library libjabber.so
cd /home/vic/src/qutim-build/protocols/jabber && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/jabber.dir/link.txt --verbose=1
/usr/bin/c++  -fPIC    -shared -Wl,-soname,libjabber.so -o libjabber.so CMakeFiles/jabber.dir/src/jabber_global.cpp.o CMakeFiles/jabber.dir/src/jplugin.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jcertinfo.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnection.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectionbase.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectionlistener.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectiontcpbase.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectiontcpserver.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jserverdiscoinfo.cpp.o CMakeFiles/jabber.dir/src/protocol/account/dataform/jdataform.cpp.o CMakeFiles/jabber.dir/src/protocol/account/jaccount.cpp.o CMakeFiles/jabber.dir/src/protocol/account/jpgpkeydialog.cpp.o CMakeFiles/jabber.dir/src/protocol/account/jpgpsupport.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jbookmarkmanager.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jconferenceconfig.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jinvitemanager.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jmucmanager.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jmucsession.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jmucuser.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jsessionconvertor.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jaccountresource.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jcontact.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jcontactresource.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jmessagehandler.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jmessagesession.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jmessagesessionowner.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jresourceactiongenerator.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jroster.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jsoftwaredetection.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/metacontacts.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountfinishpage.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountregistrationpage.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountwizard.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountwizardpage.cpp.o CMakeFiles/jabber.dir/src/protocol/jjidvalidator.cpp.o CMakeFiles/jabber.dir/src/protocol/jmainsettings.cpp.o CMakeFiles/jabber.dir/src/protocol/jprotocol.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/jactivitychooser.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/jpersonactivityconverter.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/jadhocmodule.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/jadhocwidget.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/attention/jattention.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/filetransfer/jfiletransfer.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/jinglesupport/jinglesupport.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/jmoodchooser.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/jpersonmoodconverter.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/pep/jpersoneventsupport.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/proxy/jproxymanager.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/remotecontrol/remotecontrol.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/servicediscovery/jservicebrowser.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/tunepep/jpersontuneconverter.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/jinforequest.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/jvcardmanager.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/xmlconsole/xmlconsole.cpp.o CMakeFiles/jabber.dir/src/moc_jplugin.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jcertinfo.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnection.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectionbase.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectionlistener.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectiontcpbase.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectiontcpserver.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jserverdiscoinfo.cxx.o CMakeFiles/jabber.dir/src/protocol/account/dataform/moc_jdataform.cxx.o CMakeFiles/jabber.dir/src/protocol/account/moc_jpgpkeydialog.cxx.o CMakeFiles/jabber.dir/src/protocol/account/moc_jpgpsupport.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jbookmarkmanager.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jconferenceconfig.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jinvitemanager.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jmucsession.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jmucuser.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jsessionconvertor.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jaccountresource.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jcontact.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jcontactresource.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jmessagehandler.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jmessagesession.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jroster.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jsoftwaredetection.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountfinishpage.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountregistrationpage.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountwizard.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountwizardpage.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jjidvalidator.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jmainsettings.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/moc_jactivitychooser.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/moc_jpersonactivityconverter.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/moc_jadhocmodule.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/moc_jadhocwidget.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/attention/moc_jattention.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/filetransfer/moc_jfiletransfer.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/jinglesupport/moc_jinglesupport.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/moc_jmoodchooser.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/moc_jpersonmoodconverter.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/pep/moc_jpersoneventsupport.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/proxy/moc_jproxymanager.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/remotecontrol/moc_remotecontrol.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/servicediscovery/moc_jservicebrowser.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/tunepep/moc_jpersontuneconverter.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/moc_jinforequest.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/moc_jvcardmanager.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/xmlconsole/moc_xmlconsole.cxx.o ../../core/libqutim/libqutim.so.0.3.1.0 jreen/libjreen.so.1.1.0 /usr/local/lib/libqca.so /usr/local/lib/qt4/libQtCore.so /usr/local/lib/qt4/libQtGui.so /usr/local/lib/libSM.so /usr/local/lib/libICE.so /usr/local/lib/libX11.so /usr/local/lib/libXext.so /usr/local/lib/qt4/libQtScript.so /usr/local/lib/qt4/libQtGui.so /usr/local/lib/qt4/libQtXml.so /usr/local/lib/qt4/libQtNetwork.so /usr/local/lib/qt4/libQtCore.so -lz -lspeex -Wl,-rpath,/home/vic/src/qutim-build/core/libqutim:/home/vic/src/qutim-build/protocols/jabber/jreen:/usr/local/lib:/usr/local/lib/qt4:
/usr/bin/ld: cannot find -lspeex
*** Error code 1

Stop in /home/vic/src/qutim-build.
*** Error code 1

Stop in /home/vic/src/qutim-build.
*** Error code 1

Stop in /home/vic/src/qutim-build.
%


Порт /usr/ports/audio/speex/ установлен.

Код: Выделить всё

% ls -al /usr/local/lib/ | grep speex
-rw-r--r--    1 root  wheel    205306 May 19 08:03 libspeex.a
-rwxr-xr-x    1 root  wheel       939 May 19 08:03 libspeex.la
lrwxr-xr-x    1 root  wheel        13 May 19 08:03 libspeex.so -> libspeex.so.1
-rwxr-xr-x    1 root  wheel    120550 May 19 08:03 libspeex.so.1
-rw-r--r--    1 root  wheel    108150 May 19 08:03 libspeexdsp.a
-rwxr-xr-x    1 root  wheel       960 May 19 08:03 libspeexdsp.la
lrwxr-xr-x    1 root  wheel        16 May 19 08:03 libspeexdsp.so -> libspeexdsp.so.1
-rwxr-xr-x    1 root  wheel     77868 May 19 08:03 libspeexdsp.so.1
%


Cmake путь к библиотеке прописывает.

Код: Выделить всё

% cat src/qutim-build/CMakeCache.txt | grep speex
jreen_LIB_DEPENDS:STATIC=general;/usr/local/lib/qt4/libQtScript.so;general;/usr/local/lib/qt4/libQtGui.so;general;/usr/local/lib/qt4/libQtXml.so;general;/usr/local/lib/qt4/libQtNetwork.so;general;/usr/local/lib/qt4/libQtCore.so;general;/usr/local/lib/libqca.so;general;/usr/lib/libz.so;general;speex;
SPEEX_CFLAGS:INTERNAL=-I/usr/local/include;-I/usr/local/include/speex
SPEEX_INCLUDE_DIRS:INTERNAL=/usr/local/include;/usr/local/include/speex
SPEEX_LDFLAGS:INTERNAL=-L/usr/local/lib;-lspeex
SPEEX_LIBRARIES:INTERNAL=speex
SPEEX_STATIC_CFLAGS:INTERNAL=-I/usr/local/include;-I/usr/local/include/speex
SPEEX_STATIC_INCLUDE_DIRS:INTERNAL=/usr/local/include;/usr/local/include/speex
SPEEX_STATIC_LDFLAGS:INTERNAL=-L/usr/local/lib;-lspeex;-lm
SPEEX_STATIC_LIBRARIES:INTERNAL=speex;m
SPEEX_speex_INCLUDEDIR:INTERNAL=
SPEEX_speex_LIBDIR:INTERNAL=
SPEEX_speex_PREFIX:INTERNAL=
SPEEX_speex_VERSION:INTERNAL=
%


Подскажите, почему библиотека не видится?

Гость
проходил мимо

Re: сборка qutim 0.3 под freebsd

Непрочитанное сообщение Гость » 2012-05-21 12:14:53

1) не обновлен кеш ldconfig
или
2) кривые пути -L, не смотря на то что они как то там мелькают
или сразу оба варианта

Himik
ефрейтор
Сообщения: 65
Зарегистрирован: 2008-03-26 14:52:58
Откуда: UA, Крым, Саки

Re: сборка qutim 0.3 под freebsd

Непрочитанное сообщение Himik » 2012-05-21 13:36:19

1)

Код: Выделить всё

% ldconfig -r | grep speex
        534:-lspeex.1 => /usr/local/lib/libspeex.so.1
        535:-lspeexdsp.1 => /usr/local/lib/libspeexdsp.so.1


2) Как проверить второй вариант?

Гость
проходил мимо

Re: сборка qutim 0.3 под freebsd

Непрочитанное сообщение Гость » 2012-05-21 14:45:24

второй вариант это особенности gcc и cmake
обновите их до последней версии,
причем не факт что в портах последняя версия

Himik
ефрейтор
Сообщения: 65
Зарегистрирован: 2008-03-26 14:52:58
Откуда: UA, Крым, Саки

Re: сборка qutim 0.3 под freebsd

Непрочитанное сообщение Himik » 2012-05-21 16:25:40

Критично ли различие -lspeex и -lspeex.1?

Гость
проходил мимо

Re: сборка qutim 0.3 под freebsd

Непрочитанное сообщение Гость » 2012-05-21 23:44:49

критично
вообщем то ошибка линкера ld он сказал что не может найти -lspeex
значит имя либы -lspeex он ищет
и оно правильно
значит логично что он ее не находит
а значит не правильно передается или -Lпуть или кешпуст

кеш вы проверили по ldconfig
значит линкер не может найти потому что некорректно ему передаются пути,
а пути ему передает cmake,

сам же cmake впринципе вроде теоретически тоже правильно передает,
значит либо
1) cmake передает не правильно
2) либо то что он передает правильно, но не для той версии линкера что сечас в бсд

Himik
ефрейтор
Сообщения: 65
Зарегистрирован: 2008-03-26 14:52:58
Откуда: UA, Крым, Саки

Re: сборка qutim 0.3 под freebsd

Непрочитанное сообщение Himik » 2012-05-23 8:51:33

Решилось сборкой при помощи gcc 4.6.


Вернуться в «C/C++»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость