我正在调试一个c++程序:
gdb simplesearch.o
然后gdb启动成功:
(gdb) Reading symbols from /home/zwx/workspace/xapian/examples/simplesearch.o...done.
但是当我试着跑的时候:
(gdb) run
gdb报告:
Starting program: /home/zwx/workspace/xapian/examples/simplesearch.o
/bin/bash: /home/zwx/workspace/xapian/examples/simplesearch.o: cannot execute binary file
/bin/bash: /home/zwx/workspace/xapian/examples/simplesearch.o: Success
During startup program exited with code 126.
有人有主意了吗?
发布于 2012-04-16 09:37:33
.o
文件不是程序,它是需要与库链接才能生成程序的目标文件。您可以使用gdb
来检查其中的代码,但它是不可运行的( "cannot execute binary file“消息)。你需要链接它来制作一个程序。可能是这样的
g++ -o simplesearch simplesearch.o
已经足够了,但如果没有更多的信息,就不清楚它是否需要更多的库,而不仅仅是system C库和C++运行时支持等。
https://stackoverflow.com/questions/10167779
复制相似问题