2016-04-22 77 views
0

我已經用C++構建了一個應用程序,該應用程序與第三方共享庫(如opencv)鏈接。現在我需要打包這個應用程序並將其作爲tar文件重新分發給用戶,而無需安裝和編譯第三方依賴項。在Linux/Ubuntu中編譯諸如opencv之類的庫是一個非常痛苦的過程。C++封裝:查找共享庫依賴關係

現在我想要找到庫的所有特定模塊都與可執行文件鏈接的內容,並將它們包含在分發tar中。我不想包括整個圖書館,因爲焦油的大小會爆炸。

僅僅包含由ldd命令檢測到的庫是否足夠了?任何指導或提示/起點將有幫助

+0

不要忘記檢查你是否被允許重新分配他們,閱讀他們的許可證。 [OpenCV允許你這樣做](http://opencv.org/license.html)。 – Berriel

回答

1

ldd命令可用於顯示可執行文件(或庫)鏈接到的庫。

1

我提示它適用於我(在添加所有與ldd的依賴關係之後)是在virtualBox中安裝一個新的linux並嘗試配置tar,因爲我會是最終用戶。這樣你就可以檢查一切正常。