Blue Gene Q - ELF header 的编译

问题描述 投票:0回答:1

我使用 gcc 编译器在 BGQ 上编译了修补软件 - 由于我不明白的原因,我在使用标准 IBM XL 编译器编译此软件时遇到了巨大的问题...

软件已编译并且可以在访问节点上运行,但是当我尝试在队列中运行作业时,出现此错误:

Load failed on R00-IC-J01: Application executable ELF header contains invalid value, errno 8 Exec format error

有什么想法吗?这是否意味着我应该用 XL 来编译它? 谢谢。

compiler-errors cross-compiling hpc xlc
1个回答
4
投票

你说“软件已编译并可以在访问节点上运行”,但这不是蓝色基因的工作原理。 必须对计算节点进行交叉编译:在登录节点上运行的可执行文件将无法在计算节点上运行。

好吧,这不是 100% 正确:如果您的应用程序避免了后端特定的事情(没有 QPX 指令,没有 CNK 特定的功能),那么一个简单的计算节点程序可能会在访问节点上运行。

您需要使用蓝色基因工具链来编译您的程序。 在 Argonne 的 BGQ(Mira、Cetus、Vesta)上,GCC 交叉编译器位于

/bgsys/drivers/ppcfloor/gnu-linux/bin
中,IBM 交叉编译器位于
/soft/compilers/ibmcmp-may2013/vac/bg/12.1/bin/bgxlc_r
中。 如果您不在阿贡,请询问您的支持人员。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.