首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何静态编译ps(procps)

如何静态编译ps(procps)
EN

Stack Overflow用户
提问于 2018-09-20 17:34:23
回答 2查看 448关注 0票数 1

出于取证的原因,我想在Centos上编译一些基本的工具,如cat,grep,vi,find,md5sum,dir等等。当我们尝试编译ps( forensic.so ) statically.and时,检查进程列表是非常重要的,我做失败了。下面是我尝试过的步骤:

代码语言:javascript
复制
git clone https://gitlab.com/procps-ng/procps.git
cd procps
./autogen.sh
./configure LDFLAGS="-static"

make SHARED=0 CC='gcc -static'

我也用谷歌搜索了很多帖子,并尝试:

代码语言:javascript
复制
./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命令检查它时,它显示

代码语言:javascript
复制
[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对这些非静态库有很深的依赖吗?

EN

回答 2

Stack Overflow用户

发布于 2019-08-05 15:57:33

您可能需要安装glibc-static。

票数 0
EN

Stack Overflow用户

发布于 2020-12-16 04:07:07

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

代码语言:javascript
复制
./configure \
    --disable-shared \
    LDFLAGS=--static
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52421935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档