我正在调试一个c ++程序:
gdb simplesearch.o
Run Code Online (Sandbox Code Playgroud)
然后gdb成功启动:
(gdb) Reading symbols from /home/zwx/workspace/xapian/examples/simplesearch.o...done.
Run Code Online (Sandbox Code Playgroud)
但是当我试图跑:
(gdb) run
Run Code Online (Sandbox Code Playgroud)
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.
Run Code Online (Sandbox Code Playgroud)
有人有想法吗?
甲.o
文件不是一个程序,它是需要与库以产生程序被链接的对象文件.您可以使用它gdb
来检查其中的代码,但它不可运行("无法执行二进制文件"消息).您需要将其链接以制作程序.可能是类似的东西
g++ -o simplesearch simplesearch.o
Run Code Online (Sandbox Code Playgroud)
就行了,但没有更多的信息,不清楚它是否需要更多的库,而不仅仅是系统C库和C++运行时支持等.
归档时间: |
|
查看次数: |
18715 次 |
最近记录: |