是否可以在R中將源代碼(mypackage.tar.gz)轉換爲R中的窗口安裝(mypackage.zip)?我該怎麼做 ?在R中將源代碼(mypackage.tar.gz)轉換爲窗口安裝(mypackage.zip)R
我可以使用7-Zip解壓縮tar.gz。當我試圖重新編譯以下是錯誤消息:
加載所需包:mypackage的 失敗,錯誤:'mypackage的「是不是有效的安裝包」
是否可以在R中將源代碼(mypackage.tar.gz)轉換爲R中的窗口安裝(mypackage.zip)?我該怎麼做 ?在R中將源代碼(mypackage.tar.gz)轉換爲窗口安裝(mypackage.zip)R
我可以使用7-Zip解壓縮tar.gz。當我試圖重新編譯以下是錯誤消息:
加載所需包:mypackage的 失敗,錯誤:'mypackage的「是不是有效的安裝包」
不,你需要安裝Rtools和編譯二進制包結尾於.zip
從源包結尾於.tar.gz
。即使只包含R代碼的包,也需要包/構建「編譯」步驟。
嘗試網絡上關於在Windows上構建包的許多教程之一。
或者,使用真棒win-builder網站爲您創建軟件包。
我在Linux機器上開發我的R軟件包 - 如果你也這樣做,這就是我所做的,它可以幫助你。
爲了使R的.zip,我基本上'安裝'到臨時目錄並將其壓縮。該.zip文件可以在Windows上使用。
# make the package:
R CMD build my_package
# make tmp directory
mkdir tmp
# install the package to temp directory
R CMD INSTALL -l tmp my_package.tar.gz
# zip it up
cd tmp
zip -r my_package.zip my_package
# move your zip file back out and delete tmp directory
mv my_package.zip ../
cd ../
rm -rf tmp
我把這一切都變成一個makefile,便於讓我可以輸入(例如)make doc
生成文檔(因爲我用roxygen2),make package
做R CMD build
,make zip
到名爲.tar.gz轉換成.zip等
此方法僅適用於編譯了C/C++/Fortran代碼,因此它不會在mclust上工作,並且通常不鼓勵R列表上的線程可以看到它。 – 2012-03-20 12:35:36
哦,我忘了提及我只有R代碼(我想它不適用於任何編譯的代碼?)。當我幾個月前遇到與OP相同的困境時,我在R郵件列表存檔中看起來儘可能的難以理解,並且只能找到一個相關的線程,其中該人員執行了'R CMD INSTALL',然後是'zip'這就是爲什麼我將這一點應用到了我的工作流程中。我總是樂於改進這一點,現在將研究Rtools,除了我的要求是在Linux下構建Windows .zip,而Rtools似乎是在Windows下構建的? – 2012-03-20 23:18:20
如果你的代碼不在你的手中,那麼沒有什麼比贏得建設者更好:) – 2012-03-20 23:20:35