链接器错误:访问合并部分的末尾

时间:2018-01-15 20:18:30

标签: gcc linker fortran hpc

我之前在gcc 6.3的机器上构建了我的代码。我正在使用gcc 5.3在另一台机器上构建相同的代码。我尝试使用来自不同位置的工作oed库。但仍然存在错误。我在Stackoverflow上查看了与此类似的其他问题的建议,但是他们建议必须已经链接了库。但事实并非如此。 Oed是一个fortran库,代码是C和C ++。

我不知道如何找出这个问题。欢迎任何帮助。

/usr/bin/ld: oed__gener_nai_batch.o: access beyond end of merged section (380) 
/usr/bin/ld: oed__gener_nai_batch.o: access beyond end of merged section (586)
/usr/bin/ld: oed__gener_nai_batch.o: access beyond end of merged section (580)
/usr/bin/ld: /home/umunipala/gamess/gamess-kris-simgms/simgms/oed/liboed.a(oed__gener_nai_batch.o)(.debug_info+0x203): reloc against `.debug_str': error 2
/usr/bin/ld: final link failed: Nonrepresentable section on output

collect2:错误:ld返回1退出状态

1 个答案:

答案 0 :(得分:1)

嗯,我认为有两种解决方案。

  1. 使用您当前的库设置重新编译.c文件。

  2. 导出相应版本的LD库。

  3. 问题基本上是由.o文件和你的gcc(编译器)之间的分歧引起的。