64位Centos上的64位二进制执行错误

问题描述:

在执行我的一个C++应用程序时,我在其中一个Cento x64机箱上收到了一个奇怪的消息,同时另一台具有类似配置的机器正在完美运行应用程序。64位Centos上的64位二进制执行错误

错误信息是:

/MyApp的:错误而载入共享库:/ MyApp的:错误ELF类:ELFCLASS64

NB: 'MyApp的' 不是一些共享库(。所以),但实际应用本身。

与myapp链接的所有第三方库也已经在我执行应用程序的机器上编译。我编译了libmysqlpp,libthrift和libACE库,并且通过yum安装了其他必需的东西。

+0

'ldd myapp'给你什么?一切都解决了吗?在编译和链接myapp时得到的任何警告? – vpram86 2010-03-02 04:34:18

一切都解决了。

其实我试图使用ld-linux.so.2动态加载我的应用程序,以便使用自定义库文件夹,但ld-linux.so.2只执行32位二进制文​​件。我现在用的LD-Linux的x86-64.so.2,一切似乎不错:)

有在更广泛的议题深入的文章极好的(如在64台机器上运行32个应用程序编译)标题为“在64位Debian GNU/Linux上运行32位应用程序”的http://www.debian-administration.org/articles/534。简短的答案是ia32 Suite