2014-07-19 137 views
0

我使用cmake爲C++庫g2o創建了visual studio文件。但是當我嘗試構建它時,它在某些模板定義中顯示錯誤時失敗。Visual Studio express顯示錯誤:「編譯器中發生內部錯誤」

template<> 
inline void axpy(const Eigen::MatrixXd& A, const Eigen::Map<const Eigen::VectorXd>& x, int xoff, Eigen::Map<Eigen::VectorXd>& y, int yoff) 
{ 
    y.segment(yoff, A.rows()) += A * x.segment(xoff, A.cols()); 
} 

由於我不是C++的專家,我不確定在這行代碼中出了什麼問題。我試着評論這段代碼和建築。然後構建在下一個模板定義上失敗。這是視覺工作室的問題嗎?

所示的誤差是

enter image description here

相同的代碼是Linux可以正常使用。但我需要在Windows機器上運行它,因爲調試更容易,而且我只能訪問linux機器。任何幫助將不勝感激。

+0

這看起來像Visual Studio 2010.你能升級到更新的版本嗎? – Dani

+0

@Dani它是Visual Studio Express 2013 ..我認爲最新版本:( – User1234321232

+0

看起來像一個編譯器錯誤。你有沒有試過看https://connect.microsoft.com/VisualStudio/Feedback看看有沒有什麼相關的東西? –

回答

1

在windows VS環境中,您需要更改模板規範。 將template<>更改爲template<Eigen::MatrixXd>將工作