[英]Cannot install turtle-cli with npm install -g
I develop an app with expo and because of react-native-sound module I need to build an apk for test my program, but I must build in local, so I tried to install turtle-cli but I have many error and I don't know-how to fix it.我用 expo 开发了一个应用程序,由于 react-native-sound 模块,我需要构建一个 apk 来测试我的程序,但我必须在本地构建,所以我尝试安装 turtle-cli 但我有很多错误,我没有t 知道如何解决它。
expo diagnostics
return: expo diagnostics
返回:
Expo CLI 3.17.18 environment info:
System:
OS: Linux 5.5 Fedora 30 (Workstation Edition) 30 (Workstation Edition)
Shell: 5.7.1 - /usr/bin/zsh
Binaries:
Node: 10.19.0 - /usr/bin/node
npm: 6.14.4 - /usr/local/bin/npm
npmPackages:
expo: ~37.0.3 => 37.0.6
react: ~16.9.0 => 16.9.0
react-native: ^0.62.2 => 0.62.2
npmGlobalPackages:
expo-cli: 3.17.18
First I tried without sudo:首先我尝试不使用 sudo:
...
npm ERR! code EACCES
npm ERR! syscall access
npm ERR! path /usr/local/lib/node_modules
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! { [Error: EACCES: permission denied, access '/usr/local/lib/node_modules']
npm ERR! stack:
npm ERR! 'Error: EACCES: permission denied, access \'/usr/local/lib/node_modules\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/local/lib/node_modules' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/Osmonoz/.npm/_logs/2020-04-09T10_00_56_580Z-debug.log
And there is the sudo npm install -g turtle-cli
errors:还有
sudo npm install -g turtle-cli
错误:
...
> dtrace-provider@0.8.8 install /usr/local/lib/node_modules/turtle-cli/node_modules/dtrace-provider
> node-gyp rebuild || node suppress-error.js
gyp WARN EACCES current user ("nobody") does not have permission to access the dev dir "/root/.cache/node-gyp/10.19.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/turtle-cli/node_modules/dtrace-provider/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/turtle-cli/node_modules/dtrace-provider/.node-gyp'
gyp ERR! System Linux 5.5.10-100.fc30.x86_64
gyp ERR! command "/usr/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/turtle-cli/node_modules/dtrace-provider
gyp ERR! node -v v10.19.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
> iltorb@2.4.5 install /usr/local/lib/node_modules/turtle-cli/node_modules/iltorb
> node ./scripts/install.js || node-gyp rebuild
WARN install EACCES: permission denied, access '/root/.npm'
gyp WARN EACCES current user ("nobody") does not have permission to access the dev dir "/root/.cache/node-gyp/10.19.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/turtle-cli/node_modules/iltorb/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/turtle-cli/node_modules/iltorb/.node-gyp'
gyp ERR! System Linux 5.5.10-100.fc30.x86_64
gyp ERR! command "/usr/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/turtle-cli/node_modules/iltorb
gyp ERR! node -v v10.19.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
> sharp@0.24.1 install /usr/local/lib/node_modules/turtle-cli/node_modules/sharp
> (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
ERR! sharp EACCES: permission denied, mkdir '/root/.npm'
info sharp Are you trying to install as a root or sudo user? Try again with the --unsafe-perm flag
info sharp Attempting to build from source via node-gyp but this may fail due to the above error
info sharp Please see https://sharp.pixelplumbing.com/install for required dependencies
gyp WARN EACCES current user ("nobody") does not have permission to access the dev dir "/root/.cache/node-gyp/10.19.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/turtle-cli/node_modules/sharp/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/turtle-cli/node_modules/sharp/.node-gyp'
gyp ERR! System Linux 5.5.10-100.fc30.x86_64
gyp ERR! command "/usr/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/turtle-cli/node_modules/sharp
gyp ERR! node -v v10.19.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
...
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! sharp@0.24.1 install: `(node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the sharp@0.24.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2020-04-09T09_48_07_424Z-debug.log
I hope someone know what I'm doing wrong,我希望有人知道我做错了什么,
thanks谢谢
I found the answer, it's pretty simple, I just need to add --unsafe-perm
flag to the command:我找到了答案,这很简单,我只需要在命令中添加
--unsafe-perm
标志:
sudo npm install -g turtle-cli --unsafe-perm
It was written underneath the error..它写在错误下面..
info sharp Are you trying to install as a root or sudo user? Try again with the --unsafe-perm flag
I assume there is a unsuitable permissions on usr folder, you might try to change writing permissions using chmod command.我假设usr文件夹上存在不合适的权限,您可以尝试使用chmod命令更改写入权限。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.