如何静态编译tshark?
How to static compile tshark?
我用cmake编译了tshark。
我 运行 命令 cmake -DBUILD_wireshark=off; make CFLAGS="-static"
,然后我在 build/run
中找到 BUILD_wiresharktshark
,但它是动态的 link,并且依赖更多 xxx.so
.
我该怎么办?谢谢;
我只需要过滤器。可能有最好的方法吗?
已解决!
我使用配置:
./configure --enable-static=yes --enable-wireshark=no --disable-gtktest --enable-shared=no --with-zlib=no -with-gnutls=no --with-krb5=no --with-adns=no --with-geoip=no --with-plugins=no --enable-editcap=no --enable-capinfos=no --enable-mergecap=no --enable-text2pcap=no --enable-idl2wrs=no --enable-dftest=no --enable-randpkt=no --enable-rawshark=no --enable-dumpcap=no --enable-androiddump=no --with-gcrypt=no --with-libsmi=no --without-portaudio --without-lua --disable-glibtestst --with-gtk2=no --with-gtk3=no
但是,很多库在我的 OS(Fedora 32) 上不提供静态版本。
接下来,我构建了很多静态库:c-ares, eudev-1.5, libgcrypt-1.8.7, glib, libnl-3.2.25, libusb
。
那么,成功了:-).
哦,--enable-dumpcap=no
是可选的,因为我不需要抓包。
我用cmake编译了tshark。
我 运行 命令 cmake -DBUILD_wireshark=off; make CFLAGS="-static"
,然后我在 build/run
中找到 BUILD_wiresharktshark
,但它是动态的 link,并且依赖更多 xxx.so
.
我该怎么办?谢谢;
我只需要过滤器。可能有最好的方法吗?
已解决! 我使用配置:
./configure --enable-static=yes --enable-wireshark=no --disable-gtktest --enable-shared=no --with-zlib=no -with-gnutls=no --with-krb5=no --with-adns=no --with-geoip=no --with-plugins=no --enable-editcap=no --enable-capinfos=no --enable-mergecap=no --enable-text2pcap=no --enable-idl2wrs=no --enable-dftest=no --enable-randpkt=no --enable-rawshark=no --enable-dumpcap=no --enable-androiddump=no --with-gcrypt=no --with-libsmi=no --without-portaudio --without-lua --disable-glibtestst --with-gtk2=no --with-gtk3=no
但是,很多库在我的 OS(Fedora 32) 上不提供静态版本。
接下来,我构建了很多静态库:c-ares, eudev-1.5, libgcrypt-1.8.7, glib, libnl-3.2.25, libusb
。
那么,成功了:-).
哦,--enable-dumpcap=no
是可选的,因为我不需要抓包。