日期:2014-05-16  浏览次数:20636 次

不同Linux系统下同一个可执行文件执行问题
==> 问题
把A   Linux系统上的一个执行文件mytest拷贝B   Linux系统上,chmod   a+x   mytest后执行出现如下问题:
bash:   ./mytest:   没有那个文件或目录

==>
用file和ojdump查看mytest如下:
> file   mytest
mytest:   ELF   32-bit   LSB   executable,   Intel   80386,   version   1   (SYSV),   dynamically   linked   (uses   shared   libs),   stripped


> objdump   -h   mytest
mytest:           文件格式   elf32-i386

节:
Idx   Name                     Size             VMA               LMA               File   off     Algn
    0   .interp               00000013     080480f4     080480f4     000000f4     2**0
                                    CONTENTS,   ALLOC,   LOAD,   READONLY,   DATA
    1   .hash                   00000350     08048108     08048108     00000108     2**2
                                    CONTENTS,   ALLOC,   LOAD,   READONLY,   DATA
    2   .dynsym               00000710     08048458     08048458     00000458     2**2
                                    CONTENTS,   ALLOC,   LOAD,   READONLY,   DATA
    3   .dynstr               00000445     08048b68     08048b68     00000b68     2**0
                                    CONTENTS,   ALLOC,   LOAD,   READONLY,   DATA
    4   .rel.plt             00000308     08048fb0     08048fb0     00000fb0     2**2
                                    CONTENTS,   ALLOC,   LOAD,   READONLY,   DATA
    5   .init                   00000004     080492b8     080492b8     000012b8     2**2
                                    CONTENTS,   ALLOC,   LOAD,   READONLY,   CODE
    6   .plt                     00000620     080492bc     080492bc     000012bc     2**2
                                    CONTENTS,   ALLOC,   LOAD,   READONLY,   CODE
    7   .text                   0