Eclipse 可执行架构类型

Posted

技术标签:

【中文标题】Eclipse 可执行架构类型【英文标题】:Eclipse executable arch type 【发布时间】:2020-05-27 07:18:56 【问题描述】:

当我尝试在我的 Mac 上使用 Eclipse 和 c++ 项目为 linux 系统创建可执行文件时遇到了问题。

我可以准备可执行文件,但是对于arch x86_64

$ file <fileName>: Mach-O 64-bit executable x86_64

以前在 linux 系统上运行良好的示例可执行文件有 ELF 32-bit LSB executable:

$ file <fileName_original>: ELF 32-bit LSB executable, MIPS, MIPS32 rel2 version 1 (SYSV), dynamically linked, interpreter /lib/ld-uClibc.so.0, with debug_info, not stripped

结果当我尝试在Eclipse 中运行调试模式时

root@:~# gdbserver :2345 /home/;退出过程 /home/ 已创建; PID = 1578 无法执行 /home/:执行格式 错误。

孩子以状态 127 退出 没有要调试的程序。 GDBserver 退出

所以问题肯定出在不正确的拱型上。

我看到很多类似的问题(主要针对 Windows 平台,如 this 或 this - 他们都建议在项目设置中更改二进制解析器 - 我已经测试了所有这些 - 结果相同,所以这个解决方案是不适合我

所以我的问题 - 有没有办法更改在 macOS 上 Eclipse 中生成的可执行文件的 arch 类型?

注意: - Eclipse 信息:

面向 C/C++ 开发人员的 Eclipse IDE

版本:2020-03 (4.15.0) 版本号:20200313-1211

【问题讨论】:

【参考方案1】:

我找到了如何操作的说明(感谢建议)。

你需要:

使用 opkg 在LinkIt Smart 7688 开发板上安装和设置SFTP。 安装Eclipse C/C++ GCC Cross Compiler SupportRemote System explorer End-User RuntimeEclipse 的较新版本可能安装了这些软件包 已经。 创建一个Eclipse C/C++ Cross GCC 项目。 在工程设置中设置STAGING_DIR环境变量、刀具命令前缀、刀具路径和GDB刀具路径。 构建并设置LinkIt Smart 7688开发板的登录密码。 IDE 将自动构建、上传和执行生成的二进制文件。

完整的指令是here。

此外,在 macOS 上,您可能还需要安装 gdb 并准备 eclipse 进行调试(远程调试),这样做 - 只需关注 another instruction。

【讨论】:

以上是关于Eclipse 可执行架构类型的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )

Android 逆向ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )

Eclipse CDT 未启动可执行文件

eclipse打包可执行jar文件出错

swing程序eclipse导出可执行jar

导出的 (Eclipse) 可执行 jar 文件中的 UnsatisfiedLinkError