我一直在使用RcppArmadillo構建一個包,但是我遇到了一個小問題。我有一個完美的32位R工作包,但我希望它能在64位上運行。當我開始研究這個軟件包時,我使用了32位R(沒有意識到這一點),但是當我轉向64位R時,我停止了構建我的軟件包。我收到錯誤消息:「LoadLibrary失敗:%1不是有效的Win32應用程序。」在64位Windows上使用RcppArmadillo的構建包
我意識到問題是.dll文件是32位,所以64位R無法使用它。我不明白的是如何重新創建.dll以使其成爲64位。在運行時,在64位R中,我得到TRUE,所以我懷疑我必須在makevars文件中添加一些內容才能使其工作。
所以我的問題在一句話是:你如何得到一個工作的32位軟件包與RcppArmadillo在Windows上使用64位?任何指導將不勝感激。
不,你不需要'Rcpp :: LdFlags()',除非你使用了一個兩歲的Rcpp。 –
謝謝你的幫助德克。我可以通過在'R CMD INSTALL'中加入'--force-biarch'來建立沒有'Rcpp :: LdFlags()'的軟件包 – Carl