2010-10-18 65 views
1

我想交叉編譯busybox,但我在鏈接階段得到'undefined reference'。使用nm,這個符號實際上是從庫文件中丟失的(在我的例子中爲libbb.a)。查看源文件('busybox/libbb/xfuncs.c'),所有這些函數都包含在函數中有問題。有誰知道這些宏是什麼?我通過源代碼grep,找不到它們的定義。busybox中的L_ *宏是什麼?

+0

busybox的哪個版本?我檢查了1.10,1.13和1.17,並且找不到L_宏,至少在你提到的 – shodanex 2010-10-18 15:45:11

回答

1

如果libc沒有提供這些宏,則這些宏用作本地函數版本的標記。在許多軟件包中,autoconf腳本應該檢測它們的存在並相應地在config.h中設置選項,以便源文件可以知道哪些應該定義,哪些不應定義。

+0

的文件中我看到......但其中一些函數是像bb_xstrdup和bb_strlen這樣的東西,我認爲它們是busybox特定的,所以libc不會有那些功能呢? – Ken 2010-10-18 18:02:06