2017-07-07 81 views
0

當我試圖安裝使用cpan上的RedHat 7.3的任何模塊,我得到這個奇怪的消息 - 「make: execvp: true: Permission denied」:奇怪的錯誤嘗試在RedHat的安裝使用CPAN模塊時

sudo cpan 
cpan[1]> install Log::Log4perl 
... 
(tests run ok) 
... 
Running make install 
make: execvp: true: Permission denied 
make: *** [blibdirs] Error 127 
    MSCHILLI/Log-Log4perl-1.49.tar.gz 
    sudo /bin/make install -- NOT OK 
Failed during this command: 
MSCHILLI/Log-Log4perl-1.49.tar.gz   : install NO 

然後,如果我導航到cpans build_dir(從MyConfig.pm),找到該模塊的文件夾,並在那裏運行make test; sudo make install - 一切正常。

那裏有什麼問題cpan?這可以如何解決?

回答

3

如果您將模塊安裝到系統庫中,則可以通過安裝預生成RPM軟件包來節省相當大的痛苦。

$ sudo yum install perl-Log-Log4perl 
+0

對於'Log :: Log4perl'這可以工作,但不是每個模塊都以RPM的形式提供。例如,對於'sudo yum install Text :: Xslate',可悲的是,這將不起作用(至少在我的配置中)。 – Basil

+3

@Basil你的問題不是關於'Text :: Xslate'。 – stevieb

+1

'perl-Text-Xslate'存在於某些CentOS回購站中。 –

3

make: execvp: foo: Permission deniedhappensfoo是一些程序,不具有執行權限。在您的$PATH中找到true程序(通常爲/bin/true/usr/bin/true,但如果您有特殊的$PATH,可能還有另一個),並確保您擁有執行權限。

+0

'sudo which true' - >'/ bin/true'; 'sudo ls -ld/bin/true' - >'-rwxr-xr-x'。嗯,似乎我有執行權限。 – Basil