2010-06-16 269 views
10

我在Windows操作系統上安裝了ActivePerl。我按照以下網址 程序安裝在Windows操作系統上安裝ActivePerl

ActivePerl Installation

已經這樣做了之後,我試圖在命令行中運行「的perl -v」。但它報告了以下錯誤。

系統無法執行 指定的程序

什麼我需要做的,解決這些問題?

+0

更多地屬於超級用戶 – 2010-06-16 06:12:21

+0

提供您的操作系統,無論是32位還是64位,以及確切的包,zip,msi和平臺都會有用。 – 2010-06-16 11:15:24

+0

如果您無法解決活動Perl問題,則可以嘗試使用Strawberry Perl。 – dsolimano 2010-06-16 16:02:03

回答

8

你需要確保Perl可執行程序所在的目錄(它可能是C:\perl\bin,但基本上你告訴ActiveState Perl要安裝的地方)在你的PATH環境變量中(你可以通過鍵入set PATH命令找到變量值在Windows的命令行提示符下)。

如果你安裝Perl來還不能確定(在默認C:\perl\bin無法找到它),你可以找到,從開始菜單中,找到的ActiveState Perl的文件夾的目錄,並 -clicking在「Perl Package Manager」圖標上,然後從右鍵菜單中選擇「屬性」。屬性窗口(在「快捷方式」選項卡中)將有一個「目標」行顯示該目錄。

+0

當我搜索perl時什麼都沒有出現。如果我沒有perl \ bin怎麼辦?如果我的開始菜單有「活動狀態Perl」會怎麼樣?在任何地方搜索 – Tom 2016-08-04 23:57:56

+0

@Tom - 使用Windows文件搜索。 IIRC,主要桌面上的「F3」?或在開始菜單或文件瀏覽器中進行文件搜索。 – DVK 2016-08-05 01:06:20

4

這聽起來並不像PATH一個問題 - 我希望它給消息'perl' is not recognized as an internal or external command, operable program or batch file.

我還沒有看到此錯誤信息,但http://nirlevy.blogspot.com/2008/03/system-cannot-execute-specified-program.html使得相關程序的一些建議。 或者可以在活躍的國家論壇上提問。

+1

同意。這與路徑無關 - 錯誤與此不同。您可能需要Microsoft Visual C++ 2005可再發行組件包(x86):http://www.microsoft.com/downloads/en/details.aspx?FamilyId=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en – troyt 2010-12-28 18:52:14

0

問題出在安裝目錄。

Perl PATH變量將被設置爲C:\ Program Files \ perl(當然取決於32或64位),但是,默認安裝目錄是C:\ perl。這實際上很鬼鬼祟祟,因爲你會認爲安裝程序會更聰明一些,但它會將環境變量設置爲該目錄,無論您在哪裏安裝該死的東西。

10

我正面臨一個類似的問題......但事情是我可以通過右鍵單擊該文件並使用perl命令行解釋器打開它來執行文件....但仍然會出現該錯誤。 ..所有我所要做的就是執行該命令

set PATH=C:\Perl\bin;%PATH% 

這解決了問題...

+0

必須執行哪些多久? – 2017-06-22 21:30:22

6

我是在Windows 8的x64位版本上安裝的ActiveState Perl和嘗試調用'後得到一個類似的錯誤perl'在命令行。

'perl'不被識別爲內部或外部命令,可操作 程序或批處理文件。

我記得在安裝過程中選擇了這個選項來將Perl目錄添加到系統PATH環境中,並且在檢查系統屬性後,它確實顯示在系統PATH中。

我試着安裝'微軟Visual C++ 2008 x86和x64可再發行組件安裝'文件,建議幾個地方,但它仍然沒有解決問題,直到我嘗試了這個線程中的一些建議。

在命令提示符下我進入:

set PATH 

和令人驚訝地沒有列出Perl的目錄,包括在PATH變量。

因此,爲了彌補這方面我進入到這個命令提示符,然後按回車鍵:

set PATH=C:\Perl64\bin;C:\Perl64\site\bin;%PATH% 

(該目錄路徑爲Perl的64位版本,調整根據您的安裝)%PATH%部分很重要,並確保您現有的設置保持不變,並且在設置PATH時不會被覆蓋和覆蓋。

修復了這個問題,並在命令提示符中輸入'perl -v'成功回覆您的Perl版本。如果您在設置PATH變量之前打開PowerShell窗口,則需要關閉它並重新打開另一個PowerShell實例。

我相信最初的底層問題是針對32位和64位環境的不同PATH變量以及可能自動發生的一些內部Windows重定向。

+0

非常感謝 當在Dwimperl Windows7下運行系統('證明')時,找不到程序'使用FindBin'$ RealBin';系統('set PATH = c:\ Dwimperl \ perl \ bin;%PATH%'); my $ cmd = qq {prove --rc = .proverc :: --project $ {dir_4_test} --path_2_test_dir「$ RealBin/$ {dir_4_test}/jobs/Jobs」> $ {dir_4_test} .html}; 系統($ cmd);' – 2015-04-07 07:41:17

+0

這解決了我的問題。非常感謝。 – Omar 2016-04-09 22:06:16

2

我有一個類似的錯誤,這是通過將.pl擴展名添加到我已經忘記執行的腳本名稱來解決的。

即使我的Perl的位置(C:\ Apps \ Perl \ bin)經過了%PATH%的驗證,我也無法使其正常工作。

2

我有同樣的錯誤。我能夠通過改變環境變量中PATH變量中Perl64條目的順序來解決它。我將C:\Perl64\bin移到C:\Perl64\site\bin之前,它就起作用了。

+0

嗨Slawomir,它也適用於我,謝謝! – 2016-12-23 06:10:46

相關問題