今天下午在运行一个executable的时候只要一执行就报错Bus error,用gdb执行的话也是报错SIGBUS,gdb报错如下图所示。

因为是在调试appweb的时候出的问题,我一度以为appweb有什么隐藏的逻辑会导致硬件错误(boa以前遇到过,非常可怕)。和同事进行了设备和程序的交互后认为还是有哪里忽略了。因为我的这个程序加我的这个设备,在同事电脑上运行的时候是正常的。
最终发现问题原因是:环境变量重复包含了名字相同内容不同的库导致。export LD_LIBRARY_PATH的时候,一定要保证先包含你所运行的程序使用的库,你编译出来的一定要放在前面,这样就不会有这个问题了。