我從Android NDK r4瞭解到「ndk-gdb」的調試工具。現在我可以開始調試hello-jni示例(儘管存在一些問題)。帶有多個so庫的ndk-gdb
但是,對於我自己的Android應用程序,我有幾個這樣的庫可以使用,從大量的c/C++文件構建。我曾經使用ndk-build構建這些文件,然後將這些文件複製到$ PROJECT/libs目錄下,並且無需調試即可正常工作。但現在我想用ndk-gdb調試一個如此的lib。當我啓動ndk-gdb時,它抱怨沒有加載符號表。
我也複製所有這些文件到$ PROJECT/bin/ndk/local/armeabi(看起來像gdb試圖加載符號表的默認目錄)。而且,它仍然不起作用。
也許ndk-gdb無法跟蹤我的文件後,我複製它們?或者爲什麼它不能加載任何符號表,甚至在我將它們複製到$ PROJECT/bin/ndk/local/armeabi之後?
有沒有人遇到過這個問題?
非常感謝!
非常感謝您的回覆!我明天會試試你的解決方案。而且,你能否提供更多關於NDK內部構建過程的文檔?就像「被剝光了」一樣,我從來沒有聽說過。 – MaratSafinWang 2010-09-25 09:16:44
查看Unix命令「strip」:http://unixhelp.ed.ac.uk/CGI/man-cgi?strip - 如果您在工作時在Google上輸入「man strip」,請注意。對第一個鏈接感到驚訝。 :) – SomeCallMeTim 2010-09-27 02:53:04
對於構建過程的其他步驟,這在NDK包的docs/OVERVIEW.TXT中有記錄:「最後一步將複製應用程序需要的剝離共享庫到應用程序的根項目目錄。」 – SomeCallMeTim 2010-09-27 02:56:34