zoukankan      html  css  js  c++  java
  • 简单搭建内核调试环境--N 附录[完善第二个文件系统]

    跳转到目录 点这里 

    pacman -Fl objdump
    pacman -Fy objdump
    pacman -Ql objdump
    yay -S objdump
    yaourt -S objdump
    sudo pacman objdump
    objdump -x xxx.so | grep NEEDED
    objdump -x gdb | grep NEEDED

    根据 objdump 命令查找本地可执行文件依赖库,复制到其它目录

    [hun-hh data]# cat bin.list 
    /usr/bin/gdb
    /usr/bin/gdbserver
    /usr/bin/make
    /usr/bin/gcc
    ---------------
    [hun-hh data]# cat find_so.sh 
    findobjdump_tree()
    {
         rm -rf so.list
         rm -rf so.over
         cat $1 > so.list
         while (($((`cat so.list | wc -l`))!=0))
         do
          cat so.list |sort -k 2n|uniq |while read so
          do  
                objdump -x $so | grep NEEDED |awk '{print $2}'|xargs -i grep {} so.txt >>so.list
                echo $so |sed 's/^.*[/]//g'|xargs -i sed -i "/{}/d" so.list
                echo $so >> so.over
          done  
         done  
         rm -rf so.list
         cat so.over
         rm -rf mk_alldir
         rm -rf cp_allfile
         cat so.over |xargs -i echo mkdir -p /kernel-debug/data/mylib{} |sed 's/[/][^/]*$//g' >> mk_alldir
         cat so.over |xargs -i echo cp -daf {} /kernel-debug/data/mylib{} |sed 's/[/][^/]*$//g' >> cp_allfile
         cat mk_alldir|sort -k 2n|uniq | sh
         cat cp_allfile|sort -k 2n|uniq | sh
         rm -rf mk_alldir
         rm -rf cp_allfile
         rm -rf so.over
    }
    findobjdump_tree $1
    ------
    [hun-hh data]# cat install.sh 
    rm -rf ./mylib
    alias cp='cp'
    find /lib/* /lib64/* /usr/* > /kernel-debug/data/so.txt 
    find /lib/* /lib64/* /usr/* -type d > all_lib
    cat bin.list | sed 's/^.*///g'|xargs -i grep {} all_lib > other_dir
    sh find_so.sh bin.list
    rm -rf cat mk_other_dir
    rm -rf cat cp_other_dir
    cat other_dir   |xargs -i echo  mkdir -p /kernel-debug/data/mylib{} |sed 's/[/][][/][^/]*$//g' >> mk_other_dir
    cat other_dir   |xargs -i echo  cp -daf {} /kernel-debug/data/mylib{} |sed 's/[/][^/]*$//g' >> cp_other_dir
    cat mk_other_dir|sort -k 2n|uniq|sh
    cat cp_other_dir|sort -k 2n|uniq|sh
    rm -rf cat mk_other_dir
    rm -rf cat cp_other_dir
    rm ./all_lib
    rm ./other_dir
    rm ./so.txt
    du -sh ./mylib
    -------------------
  • 相关阅读:
    Windows Mobile下创建cmwap接入点
    我的云之旅hadoop单机设置(2)
    ssh登录
    我的云之旅前言(1)
    实时搜索将是下一个核心
    cassandra索引目录
    图书大甩卖(操作系统、C语言、Linux) 已成交
    ehcache实例
    google推出语音搜索
    百姓网看起来还行
  • 原文地址:https://www.cnblogs.com/heling/p/14160872.html
Copyright © 2011-2022 走看看