加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

build bash-4.4.12 source code on fedora-server-x86_64-22

发布时间:2020-12-15 09:07:37 所属栏目:安全 来源:网络整理
导读:前言 做个实验,尝试在fedora-server-x86_64-22编译修改bash-4.4.12源码. bash工程还是第一次玩,没看清脉络,只是先编译过。 吃饭还是要细嚼慢咽才行。 实验 bash工程 bash-4.4.12.tar.gz 编译过程 dnf install gccdnf install kernel-develdnf install gli

前言

做个实验,尝试在fedora-server-x86_64-22编译修改bash-4.4.12源码.
bash工程还是第一次玩,没看清脉络,只是先编译过。
吃饭还是要细嚼慢咽才行。

实验

bash工程

bash-4.4.12.tar.gz

编译过程

dnf install gcc
dnf install kernel-devel
dnf install glibc-static
./configure
make

编译错误的解决

Q : /usr/bin/ld: cannot find -lc
A : dnf install glibc-static

工程走读

shell.c 工程入口 int main (argc,argv)
really_add_history
edit_and_execute_command

void ls_fn_execute_command_hook(const char* psz_cmd)
{
    if (NULL != psz_cmd) {
        internal_inform("ls_fn_execute_command_hook(%s)rn",psz_cmd);
    }
}

总结

bash工程有些函数需要一些环境宏才能跑,否则调用了也没用。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读