连续调用后g ++崩溃

时间:2012-09-17 15:46:51

标签: c++ g++ opencl ld

我正在开发一个工具,它可以对g ++进行多次调用,以便编译和执行原始C ++程序的不同版本。或多或少,这个调用是在一个循环中进行的(它不是一个真正的“循环”,但调用是在一个迭代算法的一部分函数内完成的。)

对于算法的简短执行,一切顺利,所有g ++调用都正确完成(我已准备好二进制文件执行)。但是,算法执行的时间越长,工具崩溃的可能性就越大。

这次崩溃是由于g ++调用的后续崩溃,而不是返回预期的已编译二进制文件,返回以下错误:

Compiling test_oclopts_23_14_6_6000.cpp...
g++ -O3 -L/opt/AMDAPP/lib -lOpenCL -I/opt/AMDAPP/include test_oclopts_23_14_6_6000.cpp -o test_oclopts_23_14_6_6000
/usr/bin/ld: cannot find /usr/lib/i386-linux-gnu/libc_nonshared.a
/usr/bin/ld: cannot find /lib/i386-linux-gnu/ld-linux.so.2
collect2: ld returned 1 exit status

我已经搜索了一些关于此错误消息的内容,但我不明白它们如何应用于我的问题:系统中确实安装了错误的库(以前的g ++调用正常)。

有什么想法吗?此外,如果您知道在C ++程序中编译C ++源代码而不是使用system()的更好方法,我接受建议,:))

提前非常感谢,

豪尔赫。

0 个答案:

没有答案