Можно ли сказать мне, как я могу разрешить эту 'неопределенную ссылочную' ошибку при соединении на Ubuntu 10.10
conftest.c: (. text+0x4): неопределенная ссылка на 'glib_major_version'
conftest.c: (. text+0xd): неопределенная ссылка на 'glib_minor_version'
conftest.c: (. text+0x16): неопределенная ссылка на 'glib_micro_version'
collect2: ld возвратил 1 статус выхода
Я добавил 'экспорт LD_LIBRARY_PATH =/usr/lib:/lib: $LD_LIBRARY_PATH' к моему .bashrc.
$ ls - la libgl*.*
корень lrwxrwxrwx 1 базируется 23 17.12.2010 18:29 libglib-2.0.so.0-> libglib-2.0.so.0.2600.0
- rw-r - r - 1 корень базируются 842208 27.09.2010 16:16 libglib-2.0.so.0.2600.0
/ $ lib pwd
/ lib
Но это не решает проблему.Что мне делать?
Какую команду Вы выполняете для компиляции его?
Там какие-либо другие ошибки являются ведущими до этой ошибки?
У меня есть та же версия файла как Вы, и это имеет те символы.
$ ls -l libglib*
lrwxrwxrwx 1 root root 23 2010-12-05 06:03 libglib-2.0.so.0 -> libglib-2.0.so.0.2600.0
-rw-r--r-- 1 root root 842208 2010-09-28 09:16 libglib-2.0.so.0.2600.0
$ nm -D libglib-2.0.so.0.2600.0 | grep version
00073730 T glib_check_version
000c849c R glib_major_version
000c84a4 R glib_micro_version
000c84a0 R glib_minor_version
Вы компилируете свою собственную программу? Возможно, просто необходимо сказать компоновщику связываться в glib
путем добавления -lglib-2.0
опция.
Если Вы работаете
gcc -o conftest conftest.c
, необходимо сделать
gcc -o conftest -lglib-2.0 conftest.c
вместо этого.
Или можно добавить -lglib-2.0
кому: LDFLAGS
.
Вы компилируете чужую программу? Это могло бы использовать pkgconfig
. Мог бы быть некоторый материал в /usr/local
это путает вещи.
Вы устанавливали какие-либо другие программы или библиотеки сами? Возможно, что-то, что установило себя в /usr/local/lib
?
Что делает cat /usr/lib/pkgconfig/glib*
сказать?
Что делает cat /usr/local/lib/pkgconfig/glib*
сказать?
Вы, возможно, должны были бы изменить значение LD_LIBRARY_PATH
включать /usr/local/lib
, или возможно изменение PKG_CONFIG_PATH
, или добавьте некоторые опции к ./configure
.
Ответ зависит от того, что Вы делаете.