libpcap:64位计算机没有兼容的32位libpcap库
我想用libpcap使用libpcap:64位计算机没有兼容的32位libpcap库,c,linux,tcpdump,C,Linux,Tcpdump,我想用libpcap使用gcc选项-m32将.c文件编译成32位可执行文件 机器是linux 64位fedora 16 但是,我得到了以下错误 [root@fdf source]# gcc -m32 -o test_tcp test_tcp.c -lpcap /usr/bin/ld: skipping incompatible /usr/lib64/libpcap.so when searching for -lpcap /usr/bin/ld: cannot find -lpcap coll
gcc
选项-m32
将.c
文件编译成32位可执行文件
机器是linux 64位fedora 16
但是,我得到了以下错误
[root@fdf source]# gcc -m32 -o test_tcp test_tcp.c -lpcap
/usr/bin/ld: skipping incompatible /usr/lib64/libpcap.so when searching for -lpcap
/usr/bin/ld: cannot find -lpcap
collect2: ld returned 1 exit status
我安装了
yum install libpcap.i686
然后尝试编译,但仍会出现错误:
root@ddh-4.0# gcc -m32 -o test_tcp test_tcp.c -lpcap
/usr/bin/ld: skipping incompatible /usr/lib64/libpcap.so when searching for -lpcap
/usr/bin/ld: cannot find -lpcap
除了运行库之外,还需要开发包。我也是
yum install libpcap devel.i686是否安装32位库?在大多数现代系统上,可以同时安装64位和32位变体。不知道它在Fedora 16上是如何工作的,也不知道包的名称。我只是想知道为什么64位libpcap库不包含32位变体?默认情况下不包含32位版本库。您可以通过“yum install libpcap.i686”安装它。它会与64位版本冲突吗?我安装了libpcap.i686,但仍然会出现错误:
/usr/bin/ld:not find-lpcap
如果一台机器带有tcpdump,那么该机器不一定有libpcap-devel,那么我的程序可以在该机器上运行吗?谢谢是的,-devel包用于开发,即编译和链接,在运行时不需要。