2015-08-15 56 views
0

問題:在編譯和剝離二進制文件後,運行時出現「未定義引用」。在對二進制文件進行剝離之後,在運行時未定義的引用功能

所以,雖然在打包文件中,我已經嘗試在相應的二進制文件的末尾添加「nostrip」,並且工作正常。一世。即如果我不剝去,它的作品。我正在使用風河工具鏈。我認爲這與我編譯或鏈接的方式有關。

工具gcc,ld,strip等都來自同一個工具鏈。

任何幫助將非常感激。謝謝。

+0

這個問題很難回答,因爲它代表。看到傳遞給這些工具的命令行選項會很有幫助。請注意,剝離應用程序'.so'假定二進制鏈接依賴於二進制文件中的符號(循環符號引用)。這通常是糟糕設計的結果,但如果您的應用程序以編程方式鏈接更多模型(例如插件),也可能發生這種情況。 – marko

+0

感謝marco迴應。我設法弄清楚了。問題是,make文件中有一些環境變量使它使用不正確的strip實用程序,即它使用monta-vista strip實用程序而不是風河。 – ahamed101

回答

0

更新

解決方案:問題是,有在Makefile一些環境變量,這是使得它使用不正確的帶工具,即它用的是蒙塔 - Vista的帶工具,而不是風河。

相關問題