Я пытаюсь кросс-компилировать тс для моего устройства руки с рука-линукс-gnueabi Набор инструментов.
на последнем этапе создания тс Я получаю много ошибок, таких как:
make[3]: Entering directory '/home/jacovlev/utils/mc-4.8.14/src'
/bin/sh ../libtool --tag=CC --mode=link arm-linux-gnueabi-gcc -std=gnu99 -Wcomment -Wdeclaration-after-statement -Wfloat-equal -Wformat -Wformat-security -Wimplicit -Wignored-qualifiers -Wmissing-braces -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wnested-externs -Wno-long-long -Wno-unreachable-code -Wparentheses -Wpointer-sign -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtype-limits -Wuninitialized -Wunused-but-set-variable -Wunused-function -Wunused-label -Wunused-parameter -Wunused-result -Wunused-value -Wunused-variable -Wwrite-strings -I/opt/include -L/opt/lib -L/opt/lib/libncurses.a -o mc main.o libinternal.la ../lib/libmc.la -lrt
libtool: link: arm-linux-gnueabi-gcc -std=gnu99 -Wcomment -Wdeclaration-after-statement -Wfloat-equal -Wformat -Wformat-security -Wimplicit -Wignored-qualifiers -Wmissing-braces -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wnested-externs -Wno-long-long -Wno-unreachable-code -Wparentheses -Wpointer-sign -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtype-limits -Wuninitialized -Wunused-but-set-variable -Wunused-function -Wunused-label -Wunused-parameter -Wunused-result -Wunused-value -Wunused-variable -Wwrite-strings -I/opt/include -o mc main.o -L/opt/lib -L/opt/lib/libncurses.a ./.libs/libinternal.a ../lib/.libs/libmc.a -lncurses -lrt
main.o: In function `OS_Setup':
main.c:(.text+0xe4): undefined reference to `g_strdup'
main.c:(.text+0xfa): undefined reference to `g_strdup'
main.c:(.text+0x13a): undefined reference to `g_free'
main.c:(.text+0x146): undefined reference to `g_strdup'
...
./.libs/libinternal.a(editoptions.o): In function `edit_options_dialog':
editoptions.c:(.text+0x108): undefined reference to `g_snprintf'
editoptions.c:(.text+0x124): undefined reference to `g_snprintf'
editoptions.c:(.text+0x73a): undefined reference to `g_list_foreach'
editoptions.c:(.text+0x772): undefined reference to `g_free'
editoptions.c:(.text+0x7aa): undefined reference to `g_free'
editoptions.c:(.text+0x820): undefined reference to `g_list_foreach'
collect2: ld returned 1 exit status
Makefile:626: recipe for target 'mc' failed
войти выше я получаю с make V=1
, так что вы можете отслеживать мои параметры.
Что именно может вызвать эти ошибки? Что я могу сделать, чтобы попытаться исправить их?
Насколько я знаю, это ссылки на Глиба.
Я уже пытался переделать бойкий несколько раз с этим набором инструментов (сейчас я скомпилировал статический glib), и даже редактировал Makefiles вручную, чтобы попробовать разные параметры, но это ничего не дало.
Если требуется, я могу прикрепить мои параметры конфигурации.
ОБНОВИТЬ: после добавления флага -lglib, как предложил Уильям Джонс, у меня теперь другая проблема:
/home/jacovlev/voyager_15/toolchain/trunk/bin/../lib/gcc/arm-linux-gnueabi/4.6.3/../../../../arm-linux-gnueabi/bin/ld: cannot find -lglib
Задача ещё не решена.
Других решений пока нет …