gpt4 book ai didi

c - 如何静态编译ps(procps)

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:15:38 29 4
gpt4 key购买 nike

出于取证的原因,我想在 Centos 上编译一些基本工具,如 cat、grep、vi、find、md5sum、dir 等。在取证时检查进程列表非常重要。所以我尝试编译 ps (procps) statically.and I do failed.这是我尝试过的步骤:

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 pscommands 检查它时,它显示

[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 是否对这些非静态库有一些深度依赖?

最佳答案

刚刚为 procps-ng-3.3.16(现在最新的)编译,试试:

./configure \
--disable-shared \
LDFLAGS=--static

关于c - 如何静态编译ps(procps),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52421935/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com