Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

pecl install apc isn't working. shtool does not exist

Tags:

php

apc

pecl

I am an absolute newbie…didn't learn about SSh till an hour ago and got my first VPS 2 hours ago. Still learning!

So I'm installing MediaWiki and need to add APC extension. But having a lil trouble. Any ideas/tips?

[root@www ~]# pecl install apc`
downloading APC-3.1.13.tgz ...
Starting to download APC-3.1.13.tgz (171,591 bytes)
.....................................done: 171,591 bytes
55 source files, building
running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
shtool at '/var/tmp/APC/build/shtool' does not exist or is not executable.
Make sure that the file exists and is executable and then rerun this script.`
like image 376
Jimmy Wang Avatar asked Mar 28 '13 21:03

Jimmy Wang


2 Answers

Remove noexec flag from /var/tmp directory use the following command

mount -o remount,exec /var/tmp/

You can use the same command to add the noexec flag back

mount -o remount,noexec /var/tmp/
like image 177
HaniGamal Avatar answered Nov 18 '22 02:11

HaniGamal


Try this, copied from http://blog.litespeedtech.com/2013/04/05/trouble-shooting-pecl-install-doesnt-work/

A more appropriate workaround is to point PECL’s temp_dir to a partition or path that allows execution:

mkdir /root/tmp
pecl config-set temp_dir /root/tmp

or

pear config-set temp_dir /root/tmp

(There is a known bug where pecl config-set does not work but pear config-set does. If this is the case for you, simply use the PEAR config command. PECL will use PEAR when doing the install.)

This workaround preserves any security benefit from having /tmp set as noexec, but also allows PECL installs.

like image 17
apolinux Avatar answered Nov 18 '22 04:11

apolinux