升級到 Linux Mint 19 後 C++ Codebase 無法編譯,無法解析 stl 和 boost 函數

升級到 Linux Mint 19 後 C++ Codebase 無法編譯,無法解析 stl 和 boost 函數

最近,我一直在使用 Mint 19。

我們有一個 C++ 程式碼庫,我使用 cmake、make 以及 g++(版本 7.4)和 gcc(v 7.4)來編譯。

在 Mint 18 下,整個專案都可以編譯。現在,在 Mint 19 下,大多數文件都可以正常翻譯,但有些文件則不然。

在我看來,有些包含沒有解決,例如,

error: ‘fillPoly’ is not a member of ‘cv’
error: ‘boost::optional’ has not been declared

我已經嘗試使用 進行編譯 -std=gnu++0x。我已經安裝了建造必需品,libopencv-dev.

通常情況下,我會建議缺少頭文件,但該專案在 Mint 18 下編譯。

我可以透過包含例如 boost 選項來解決其中一些錯誤訊息。

我的問題是:是什麼導致了這種行為?為什麼程式碼庫使用較舊的工具鏈進行編譯?

非常感謝任何建議。

相關內容