私はウェブ開発者です。Windows OSでプロジェクトを作成していましたが、現在はUbuntu 20.04に完全に切り替えています。PHPとをインストールしましたcomposer
。しかし、でLaravelプロジェクトを作成しようとすると、htdocs
プロジェクトは作成されますが、フォルダーがありません。フォルダーにCLIでvendor
書き込むと、次のエラーが表示されます。composer update
htdocs
1=>
Cannot create cache directory /home/saad/.cache/composer/repo/https---repo.packagist.org/, or directory is not writable. Proceeding without cache
Cannot create cache directory /home/saad/.cache/composer/files/, or directory is not writable. Proceeding without cache
2=>
PHP temp directory (/tmp) does not exist or is not writable to Composer. Set sys_temp_dir in your php.ini
3=>
Your requirements could not be resolved to an installable set of packages.
次に、以下を表示します。
Problem 1
- laravel/framework v7.25.0 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
- laravel/framework v7.24.0 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
- laravel/framework 7.x-dev requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
- Installation request for laravel/framework ^7.24 -> satisfiable by laravel/framework[7.x-dev, v7.24.0, v7.25.0].
To enable extensions, verify that they are enabled in your .ini files:
- /etc/php/7.4/cli/php.ini
- /etc/php/7.4/cli/conf.d/10-opcache.ini
- /etc/php/7.4/cli/conf.d/10-pdo.ini
- /etc/php/7.4/cli/conf.d/20-bcmath.ini
- /etc/php/7.4/cli/conf.d/20-calendar.ini
- /etc/php/7.4/cli/conf.d/20-ctype.ini
- /etc/php/7.4/cli/conf.d/20-exif.ini
- /etc/php/7.4/cli/conf.d/20-ffi.ini
- /etc/php/7.4/cli/conf.d/20-fileinfo.ini
- /etc/php/7.4/cli/conf.d/20-ftp.ini
- /etc/php/7.4/cli/conf.d/20-gettext.ini
- /etc/php/7.4/cli/conf.d/20-iconv.ini
- /etc/php/7.4/cli/conf.d/20-json.ini
- /etc/php/7.4/cli/conf.d/20-phar.ini
- /etc/php/7.4/cli/conf.d/20-posix.ini
- /etc/php/7.4/cli/conf.d/20-readline.ini
- /etc/php/7.4/cli/conf.d/20-shmop.ini
- /etc/php/7.4/cli/conf.d/20-sockets.ini
- /etc/php/7.4/cli/conf.d/20-sysvmsg.ini
- /etc/php/7.4/cli/conf.d/20-sysvsem.ini
- /etc/php/7.4/cli/conf.d/20-sysvshm.ini
- /etc/php/7.4/cli/conf.d/20-tokenizer.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
答え1
composer を実行するには、プロジェクト フォルダーに入る必要があります...
例:
cd path/to/htdocs/your-laravel-project-folder
そして実行する
composer install
答え2
問題の 1 つは、composer
への書き込み権限がないことです/home/saad/.cache/composer/
。
もう 1 つの問題は、パッケージが不足していることですphp-mbstring
。次の方法でインストールします。
sudo apt install php7.4-mbstring