我已經下載了boost,它是成千上萬個文件的海量目錄。我有gcc 3.4.5 - 一箇舊版本,與現在發佈的版本比較,但它與我一直在使用的舊程序一起運行。我正在考慮通過安裝boost來讓我的程序更具優勢,特別是shared_ptr thingy似乎是一個很好的補充。我的問題是安裝boost可能會導致我的程序不再運行,或者boost庫文件是完全獨立的對象嗎?安裝boost會不會搞亂我的程序?
0
A
回答
0
如果我理解了正確的問題,並忽略了編譯器版本問題,答案是肯定的。不是僅標題的Boost庫通常是作爲一組動態庫(即根據平臺設置的一組.dll,.so或.dylib文件)開箱即用的。
建築及安裝增壓的新版本可因此搞亂在下列情況下您現有安裝的程序:
如果您已經安裝在系統上的程序,對一些現有版本的鏈接在運行時無頭Boost庫
,如果新的版本已經有界面的改變或細微的變化實施
那麼你現有的程序可能會被你安裝的較新的boost庫弄亂了(無法運行或微妙的錯誤,取決於更精確的情況細節)。
0
我不完全理解你的問題。你在談論分發二進制文件嗎?您可以靜態和動態鏈接增強。如果你靜態鏈接它們,你的二進制文件的大小會變得更大一些,但是你並不依賴於boost系統庫。這是使用Windows執行此操作的典型方法。在基於Linux的系統中,boost通常與系統庫動態鏈接,並且通常非常可靠。然而,像文件系統或程序選項這樣的一些模塊記錄了不兼容的API更改。
或者你在談論與古代編譯器版本的兼容性嗎? Boost與這樣一箇舊的GCC不是100%兼容,但核心功能應該可以工作。
相關問題
- 1. 如果我安裝ColdFusion MVC框架,它會搞亂舊的應用程序嗎?
- 2. 我的應用程序不會安裝
- 3. 在php會session_start()會搞亂我的用戶會話長度?
- 4. 我該如何取消搞亂我的Rails應用程序的Gem安裝?
- 5. 安裝CPAN模塊而不搞亂系統Perl安裝
- 6. 安裝CPAN模塊而不搞亂系統Perl安裝
- 7. 的KeyListener搞亂了程序
- 8. UWP將不會安裝使用應用程序安裝程序
- 9. install4j安裝程序不會使UNIX安裝程序可運行
- 10. OSX上的Ruby on Rails - 我是否搞亂了我的安裝?
- 11. Android Wear應用程序不會安裝
- 12. JSF - h:selectOneMenu安裝程序不會調用
- 13. Visual Studio安裝程序不會啓動
- 14. Arduino:安裝程序()不會啓動
- 15. expandableList在擴展後會被搞亂
- 16. 安裝已安裝南的新應用程序後的SyncDB - 不想亂搞東西
- 17. 如何讓我的C#程序在安裝時不會運行?
- 18. 爲什麼作曲家不會安裝我的應用程序
- 19. 我的應用程序不會安裝在糖果手機上
- 20. Android模擬器不會安裝我的應用程序
- 21. 我的應用程序不會安裝在HVGA設備上
- 22. 由JSON.NET序列化時,屬性順序會搞亂
- 23. OSX .pkg安裝程序有時不會安裝.app文件
- 24. MSI安裝包安裝程序,但不會啓動
- 25. NSIS安裝程序不會無人值守安裝
- 26. 高級安裝程序生成的安裝程序不會設置odbc連接
- 27. 高級安裝程序:安裝的.exe不會從安裝目錄啓動
- 28. 即使安裝了預先安裝程序,Setup.exe也會安裝
- 29. 安裝程序不會覆蓋現有的應用程序
- 30. json不會安裝
我也有同樣的問題。我試圖下載AMD-64位機器的升級,但安裝失敗。我無法將其移植到64位機器上。所以我忘了它。 – Juniar
那個版本不老,它是古代*。你應該真的更新你的編譯器。 – GManNickG
不要關注'boost :: shared_ptr'並直接轉到'std :: shared_ptr'。由於無論如何您都會進行源代碼重寫,爲什麼選擇較舊的非標準替代方案? 3.x在這一點上是古老的。 –