【问题标题】:What is the L_* macro in busybox?busybox 中的 L_* 宏是什么?
【发布时间】:2010-10-18 15:31:12
【问题描述】:

我正在尝试交叉编译busybox,但在链接阶段我得到了“未定义的引用”。使用nm,库文件中实际上缺少该符号(在我的情况下为libbb.a。)查看源代码('busybox/libbb/xfuncs.c'),所有这些#ifdef L_围绕有问题的功能。有谁知道这些宏是什么?我通过源 grep 找不到它们的定义位置。

【问题讨论】:

  • busybox 的哪个版本?我检查了 1.10、1.13 和 1.17 并找不到 L_ 宏,至少在你提到的文件中

标签: c cross-compiling embedded-linux busybox


【解决方案1】:

如果 libc 不提供这些宏,它们将用作函数的本地版本的标记。在许多包中,autoconf 脚本应该检测它们的存在并相应地设置config.h 中的选项,以便源文件可以知道哪些应该定义,哪些不应该定义。

【讨论】:

  • 我明白了...但是其中一些函数是 bb_xstrdup 和 bb_strlen 之类的东西,我认为它们是特定于 busybox 的,所以 libc 不会有这些函数吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-30
  • 2011-09-28
相关资源
最近更新 更多