0

arm-linux-gnueabiツールチェーンを使用して、arm デバイスのmcをクロスコンパイルしようとしています。

mcを作成する最後のステップで、次のような多くのエラーが発生します。

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 への参照です。

私はすでにこのツールチェーンを使ってglibを何度か作り直そうとしましたが (今は静的 glib をコンパイルしました)、手動で Makefile を編集してさまざまなパラメーターを試しましたが、何も得られませんでした。

必要な場合は、構成パラメーターを添付できます。

更新: -lglib フラグを追加した後、ウィリアム・ジョーンズが提案したように、私は今別の問題を抱えています:

/home/jacovlev/voyager_15/toolchain/trunk/bin/../lib/gcc/arm-linux-gnueabi/4.6.3/../../../../arm-linux-gnueabi/bin/ld: cannot find -lglib
4

0 に答える 0