Centos 中的 libpcap 静态链接 6.x

libpcap static linking in Centos 6.x

我下载了 Libpcap-1.7.4 库。当我想运行libpcap.o和libpcap.so.1.7.4时,出现如下错误:

[root@localhost libpcap-1.7.4]# ./libpcap.a
./libpcap.a: line 1: syntax error near unexpected token `newline'
./libpcap.a: line 1: `!<arch>'
[root@localhost libpcap-1.7.4]# ./libpcap.so.1.7.4 
Segmentation fault (core dumped)

你能给我一些建议吗?

OS: Centos 6.x

Could you give me some advice about what I should do?

不要尝试 运行 libpcap - 它是一个库,而不是一个程序,所以你不能 运行 它,你只能 link 一个程序。

你需要做的是link一个程序,然后运行程序

例如,如果您有一个名为 small_sniffer.c 的 C 源文件,并且您想要编译它并 link 使用 libpcap,请尝试

gcc -o small_sniffer small_sniffer.c -lpcap

动态 linking 和

gcc -static -o small_sniffer small_sniffer.c -lpcap

到link完全静态