首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在linux中将PE(便携式可执行)格式转换为ELF格式

问如何在linux中将PE(便携式可执行)格式转换为ELF格式
EN

Stack Overflow用户
提问于 2010-04-02 18:01:07
回答 2查看 14.5K关注 0票数 12

将PE二进制文件转换为ELF二进制文件的最佳工具是什么?

以下是提出这一问题的简要动机:

  1. 假设我有一个简单的C程序。
  2. 我使用gcc为linux编译了它(这给出了ELF),在Windows中使用了‘i 586-mingw32msvc-GCC’(这给出了一个PE二进制文件)。
  3. 我想使用Bitblaze的静态分析工具-藤蔓(http://bitblaze.cs.berkeley.edu/vine.html)来分析这两个二进制文件的相似之处。
  4. 现在藤蔓对PE二进制文件没有很好的支持,所以我想转换PE->ELF,然后继续进行比较/分析。

因为所有的分析都必须在Linux上运行,所以我更喜欢在Linux上运行的实用程序/工具。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2015-12-09 20:51:05

我找到了一种更简单的方法。使用剥离命令。

示例

代码语言:javascript
复制
strip -O elf32-i386 -o myprogram.elf myprogram.exe

-O elf32-i386让它以这种格式写出文件。

若要运行受支持的格式,请执行

代码语言:javascript
复制
strip --info

我正在使用来自mxe的条带命令,该命令在我的系统上实际上被命名为/opt/mxe/usr/bin/i686-w64-mingw32.static-strip。

票数 5
EN

Stack Overflow用户

发布于 2011-03-13 10:29:15

我不知道这是否完全符合您的需要,但您是否可以选择与您的MinGW版本的gcc交叉编译?

我的意思是说:它是否适合您的需要,让i 586-mingw32msvc-gcc直接编译成ELF格式的二进制文件(而不是您目前正在获得的PEs )。关于如何在另一个方向做事情的描述可以找到这里 --我想这会有点麻烦,但完全有可能让你朝着另一个方向工作(我必须承认,我还没有尝试过)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2568291

复制
相关文章

相似问题

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