2015-11-26 76 views
2

我最近安裝了XAMPP。一切都很好,但有一件事不讓我休息:我無法通過cpanm獲得任何模塊。典型的安裝日誌是這樣的:Cpanm由於應該缺少'make'而無法安裝任何模塊

cpanm (App::cpanminus) 1.6005 on perl 5.016003 built for MSWin32-x86-multi-thread 
Work directory is C:\Users\2B86~1/.cpanm/work/1448496711.6352 
You have LWP 6.04 
You have C:\Users\boss\AppData\Local\Atlassian\SourceTree\git_local\bin\tar.exe, C:\Users\boss\AppData\Local\Atlassian\SourceTree\git_local\bin\gzip.exe and C:\Users\boss\AppData\Local\Atlassian\SourceTree\git_local\bin\bzip2.exe 
You have C:\Users\boss\AppData\Local\Atlassian\SourceTree\git_local\bin\unzip.exe 
Searching DateTime::Tiny on cpanmetadb ... 
--> Working on DateTime::Tiny 
Fetching http://www.cpan.org/authors/id/A/AD/ADAMK/DateTime-Tiny-1.04.tar.gz 
-> OK 
Unpacking DateTime-Tiny-1.04.tar.gz 
Entering DateTime-Tiny-1.04 
Checking configure dependencies from META.yml 
Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.64) 
Configuring DateTime-Tiny-1.04 
Running Makefile.PL 
-> OK 
Checking dependencies from MYMETA.json ... 
Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.64) 
-> FAIL Can't configure the distribution. You probably need to have 'make'. See C:\Users\2B86~1\.cpanm\build.log for details. 

-> FAIL Can't configure the distribution. You probably need to have 'make'. See C:\Users\2B86~1\.cpanm\build.log for details.是爲了指示錯誤,但我有在同一目錄cpanm的make.exe。

有些史前史,我在安裝xampp之前安裝了Strawberry Perl,但並未意識到它已經內置了Perl。在發現我決定卸載前者後,cpanm突然開始遇到此錯誤。我仔細檢查過,並沒有在我的Strawberry Perl安裝中找到一個make.exe的痕跡,但它工作得很好,雖然它們共存,但xampp的cpanm也起作用。

我試圖尋求谷歌的幫助,但它提出了sudo apt-get install build-essentials般的建議。

回答

0

我在Windows 10 64位親。我最近從berrybrew變回了Strawberry perl,並且有同樣的問題。我可以通過完全卸載舊的perl來解決它,並清除以下文件夾(在C:盤上搜索).cpanm,.cpantesters和.cpanreporter。您可能只需要清除.cpanm文件夾,但我已清除其他文件以獲得更好的效果。 (在刪除最後兩個文件之前保存文件metabase_id.json)事實證明,在我的情況下,App :: cpanminus沒有被新的perl安裝,所以當我安裝新的perl時,它在我嘗試運行cpanm時丟失了安裝::一些::應用程序,因爲它找到了文件夾,但不是所有的地方在那裏。

0

條目「您可能需要'make'。」在日誌中意味着cpanm無法找到make文件的確切位置(例如dmake.exe)。在運行cpanm之前,該位置必須包含在%PATH%中。

例如,如果你使用MSYS和MinGW源安裝在您的Perl,運行cpanm之前執行以下命令:

set PATH=C:\MinGW\msys\1.0\bin;%PATH% 

本作可執行文件必須是用來編譯你的Perl相同。您可以通過執行以下命令來檢查製作的確切名稱:

perl -V:make 

然後找到該可執行文件的路徑並將其添加到%PATH%。

+0

我不能真正檢查你的答案了,因爲我很長一段時間沒有確切的設置。其他讀者希望可以檢查它。 – ZzZombo

相關問題