0
問題:在編譯和剝離二進制文件後,運行時出現「未定義引用」。在對二進制文件進行剝離之後,在運行時未定義的引用功能
所以,雖然在打包文件中,我已經嘗試在相應的二進制文件的末尾添加「nostrip」,並且工作正常。一世。即如果我不剝去,它的作品。我正在使用風河工具鏈。我認爲這與我編譯或鏈接的方式有關。
工具gcc,ld,strip等都來自同一個工具鏈。
任何幫助將非常感激。謝謝。
問題:在編譯和剝離二進制文件後,運行時出現「未定義引用」。在對二進制文件進行剝離之後,在運行時未定義的引用功能
所以,雖然在打包文件中,我已經嘗試在相應的二進制文件的末尾添加「nostrip」,並且工作正常。一世。即如果我不剝去,它的作品。我正在使用風河工具鏈。我認爲這與我編譯或鏈接的方式有關。
工具gcc,ld,strip等都來自同一個工具鏈。
任何幫助將非常感激。謝謝。
更新
解決方案:問題是,有在Makefile一些環境變量,這是使得它使用不正確的帶工具,即它用的是蒙塔 - Vista的帶工具,而不是風河。
這個問題很難回答,因爲它代表。看到傳遞給這些工具的命令行選項會很有幫助。請注意,剝離應用程序'.so'假定二進制鏈接依賴於二進制文件中的符號(循環符號引用)。這通常是糟糕設計的結果,但如果您的應用程序以編程方式鏈接更多模型(例如插件),也可能發生這種情況。 – marko
感謝marco迴應。我設法弄清楚了。問題是,make文件中有一些環境變量使它使用不正確的strip實用程序,即它使用monta-vista strip實用程序而不是風河。 – ahamed101