実行すると、bash ./rebuild.sh
次のエラーが発生します。
vagrant@user:/var/www/html/wp-content/xdebug$ bash ./rebuild.sh
Configuring for:
PHP Api Version: 20151012
Zend Module Api No: 20151012
Zend Extension Api No: 320151012
shtool at '/var/www/html/wp-content/xdebug/build/shtool' does not exist or is not executable.
Make sure that the file exists and is executable and then rerun this script.
~によるとこの回答"/var/www/html/ から noexec フラグを削除"する必要があります。これを試みると、別のエラーが発生します。
$ sudo mount -o remount,noexec /var/www/html/
unknown mount option `relatime'
valid options:
rw mount read write (default)
ro mount read only
uid =<arg> default file owner user id
gid =<arg> default file owner group id
ttl =<arg> time to live for dentry
iocharset =<arg> i/o charset (default utf8)
convertcp =<arg> convert share name from given charset to utf8
dmode =<arg> mode of all directories
fmode =<arg> mode of all regular files
umask =<arg> umask of directories and regular files
dmask =<arg> umask of directories
fmask =<arg> umask of regular files
この問題について多くのことが見つからなかったので、ここに閉じ込められています。どうすれば解決できますか?
xdebug readmeから: "これは、、、およびを./rebuild.sh
実行します。"phpize
./configure
make clean
make
make install
単独で実行してもphpize
同じエラーが発生します。原因は何ですか?
ベストアンサー1
あなたの意見では、これらのファイルはWindowsからインポートされたと述べましたが、これは放棄されたVMにマウントポイントがない場合は奇妙なステートメントです。 vagrantの同期フォルダ機能を使用している場合は、この情報、つまり使用しているマウントポイントとマウントオプションを知っておくと便利です。
このコマンドは、chmod +x /var/www/html/wp-content/xdebug/build/shtool
所有者、グループ、およびすべての人の実行可能ビットがLinuxファイルシステムにある場合にファイルに追加します。実行後に実行ビットがすぐに設定されていない場合、残りのオプションはファイルが実際にWindowsで共有/同期されることです。
vagrant同期フォルダはvagrantfileに設定されており、標準のLinuxツールでは設定できないため、ここで権限とマウントオプションを設定する必要があります。vm.synced_folder
設定を見つけ、必要に応じて構成します。