出于取证的原因,我想在Centos上编译一些基本的工具,如cat,grep,vi,find,md5sum,dir等等。当我们尝试编译ps( forensic.so ) statically.and时,检查进程列表是非常重要的,我做失败了。下面是我尝试过的步骤:
git clone https://gitlab.com/procps-ng/procps.git
cd procps
./autogen.sh
./configure LDFLAGS="-static"
make SHARED=0 CC='gcc -static'我也用谷歌搜索了很多帖子,并尝试:
./configure LDFLAGS="-all-static"
./configure --enable-static --disable-shared
make SHARED=0 CC='gcc -static'
make -e LDFLAGS=-all-static
export LDFLAGS="-static -Wl,--no-export-dynamic"
make -e LDFLAGS=-all-static
make sense CC="gcc -static"将这些配置与make相结合,这些配置都不起作用,一些编译失败,一些成功,但当我用ldd it命令检查它时,它显示
[root@localhost ps]# ldd pscommand
linux-vdso.so.1 => (0x00007ffca9bc2000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f3b078cd000)
libc.so.6 => /lib64/libc.so.6 (0x00007f3b07500000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3b07ad1000)procps对这些非静态库有很深的依赖吗?
发布于 2019-08-05 15:57:33
您可能需要安装glibc-static。
发布于 2020-12-16 04:07:07
刚刚编译为procps-ng-3.3.16 (现在的最新版本),试试:
./configure \
--disable-shared \
LDFLAGS=--statichttps://stackoverflow.com/questions/52421935
复制相似问题