我是 Linux 编程新手,正在尝试使用 BFD 库。这是我正在尝试编译的当前代码:
#include <bfd.h>
#include <stdlib.h>
bfd *abfd;
int main() {
bfd_init();
abfd = bfd_openr("/home/mike/Desktop/testFunc/testProg", NULL);
return 0;
}
我使用以下命令行进行编译:
gcc readInfo.c /usr/lib/libbfd.a -o readInfo
我收到以下错误:
gcc readInfo.c /usr/lib/libbfd.a -o readInfo
/usr/lib/libbfd.a(elflink.o): 在函数中elf_link_add_object_symbols':
/build/buildd/binutils-2.21.53.20110810/builddir-single/bfd/../../bfd/elflink.c:4605:
undefined reference to
objalloc_free_block'
/build/buildd/binutils-2.21.53.20110810/builddir-single/bfd/../../bfd/elflink.c:4892:
未定义的引用_sch_istable' /usr/lib/libbfd.a(elflink.o): In
function
bfd_elf_size_dynamic_sections':
/build/buildd/binutils-2.21.53.20110810/builddir-single/bfd/../../bfd/elflink.c:6048:
未定义的引用lbasename'
undefined reference to
_sch_istable'collect2:ld返回1退出
状态使:*[全部] 错误1
还有很多行错误,可以查看here http://pastebin.com/Gn78mpiX。我确信对此有一个简单的解释,但它让我困惑了一段时间。
总结一下我到目前为止所做的事情:
- 安装了 Ubuntu 的干净版本
- 安装 binutils-dev 包
如果你使用 ubuntu 安装 binutils-dev
sudo apt-get install binutils-dev
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)