Ubuntu系统下 npm install -g tauri 报错问题处理

处理在安装 Tauri 时遇到的问题,可以按照以下步骤进行操作

bash 复制代码
 npm install -g tauri
bash 复制代码
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm warn deprecated q@1.5.1: You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.
npm warn deprecated
npm warn deprecated (For a CapTP with native promises, see @endo/eventual-send and @endo/captp)
npm warn deprecated are-we-there-yet@1.1.7: This package is no longer supported.
npm warn deprecated npmlog@4.1.2: This package is no longer supported.
npm warn deprecated har-validator@5.1.5: this library is no longer supported
npm warn deprecated gauge@2.7.4: This package is no longer supported.
npm warn deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm warn deprecated w3c-hr-time@1.0.2: Use your platform's native performance.now() and performance.timeOrigin.
npm warn deprecated request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
npm warn deprecated domexception@2.0.1: Use your platform's native DOMException instead
npm warn deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm warn deprecated rimraf@2.7.1: Rimraf versions prior to v4 are no longer supported
npm warn deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm warn deprecated @tauri-apps/tauri-inliner@1.14.1: Tauri now uses a custom protocol for asset loading so this package is not used anymore.
npm warn deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.
npm error code 1
npm error path /root/.nvm/versions/node/v20.18.1/lib/node_modules/tauri/node_modules/sharp
npm error command failed
npm error command sh -c (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
npm error make: Entering directory '/root/.nvm/versions/node/v20.18.1/lib/node_modules/tauri/node_modules/sharp/build'
npm error   CC(target) Release/obj.target/nothing/../node-addon-api/nothing.o
npm error rm -f Release/obj.target/../node-addon-api/nothing.a Release/obj.target/../node-addon-api/nothing.a.ar-file-list; mkdir -p `dirname Release/obj.target/../node-addon-api/nothing.a`
npm error ar crs Release/obj.target/../node-addon-api/nothing.a @Release/obj.target/../node-addon-api/nothing.a.ar-file-list
npm error   COPY Release/nothing.a
npm error   TOUCH Release/obj.target/libvips-cpp.stamp
npm error   CXX(target) Release/obj.target/sharp/src/common.o
npm error make: Leaving directory '/root/.nvm/versions/node/v20.18.1/lib/node_modules/tauri/node_modules/sharp/build'
npm error info sharp Downloading https://github.com/lovell/sharp-libvips/releases/download/v8.10.5/libvips-8.10.5-linux-x64.tar.br
npm error ERR! sharp Request timed out
npm error info sharp Attempting to build from source via node-gyp but this may fail due to the above error
npm error info sharp Please see https://sharp.pixelplumbing.com/install for required dependencies
npm error gyp info it worked if it ends with ok
npm error gyp info using node-gyp@10.1.0
npm error gyp info using node@20.18.1 | linux | x64
npm error gyp info find Python using Python version 3.10.12 found at "/usr/bin/python3"
npm error gyp http GET https://nodejs.org/download/release/v20.18.1/node-v20.18.1-headers.tar.gz
npm error gyp http 200 https://nodejs.org/download/release/v20.18.1/node-v20.18.1-headers.tar.gz
npm error gyp http GET https://nodejs.org/download/release/v20.18.1/SHASUMS256.txt
npm error gyp http 200 https://nodejs.org/download/release/v20.18.1/SHASUMS256.txt
npm error gyp info spawn /usr/bin/python3
npm error gyp info spawn args [
npm error gyp info spawn args '/root/.nvm/versions/node/v20.18.1/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
npm error gyp info spawn args 'binding.gyp',
npm error gyp info spawn args '-f',
npm error gyp info spawn args 'make',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/root/.nvm/versions/node/v20.18.1/lib/node_modules/tauri/node_modules/sharp/build/config.gypi',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/root/.nvm/versions/node/v20.18.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/root/.cache/node-gyp/20.18.1/include/node/common.gypi',
npm error gyp info spawn args '-Dlibrary=shared_library',
npm error gyp info spawn args '-Dvisibility=default',
npm error gyp info spawn args '-Dnode_root_dir=/root/.cache/node-gyp/20.18.1',
npm error gyp info spawn args '-Dnode_gyp_dir=/root/.nvm/versions/node/v20.18.1/lib/node_modules/npm/node_modules/node-gyp',
npm error gyp info spawn args '-Dnode_lib_file=/root/.cache/node-gyp/20.18.1/<(target_arch)/node.lib',
npm error gyp info spawn args '-Dmodule_root_dir=/root/.nvm/versions/node/v20.18.1/lib/node_modules/tauri/node_modules/sharp',
npm error gyp info spawn args '-Dnode_engine=v8',
npm error gyp info spawn args '--depth=.',
npm error gyp info spawn args '--no-parallel',
npm error gyp info spawn args '--generator-output',
npm error gyp info spawn args 'build',
npm error gyp info spawn args '-Goutput_dir=.'
npm error gyp info spawn args ]
npm error gyp info spawn make
npm error gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm error <command-line>: warning: "_GLIBCXX_USE_CXX11_ABI" redefined
npm error <command-line>: note: this is the location of the previous definition
npm error ../src/common.cc:24:10: fatal error: vips/vips8: No such file or directory
npm error    24 | #include <vips/vips8>
npm error       |          ^~~~~~~~~~~~
npm error compilation terminated.
npm error make: *** [sharp.target.mk:136: Release/obj.target/sharp/src/common.o] Error 1
npm error gyp ERR! build error 
npm error gyp ERR! stack Error: `make` failed with exit code: 2
npm error gyp ERR! stack at ChildProcess.<anonymous> (/root/.nvm/versions/node/v20.18.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:209:23)
npm error gyp ERR! System Linux 5.15.0-113-generic
npm error gyp ERR! command "/root/.nvm/versions/node/v20.18.1/bin/node" "/root/.nvm/versions/node/v20.18.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
npm error gyp ERR! cwd /root/.nvm/versions/node/v20.18.1/lib/node_modules/tauri/node_modules/sharp
npm error gyp ERR! node -v v20.18.1
npm error gyp ERR! node-gyp -v v10.1.0
npm error gyp ERR! not ok

处理在安装 Tauri 时遇到的问题,可以按照以下步骤进行操作:

1. 安装 sharp 所需的系统依赖

sharp 库需要一些系统依赖项。根据您使用的 Linux 发行版,您可以使用以下命令安装这些依赖项:

对于 Ubuntu/Debian:

bash 复制代码
sudo apt-get update
sudo apt-get install -y build-essential libvips-dev

对于 Fedora:

bash 复制代码
sudo dnf install -y gcc-c++ make vips-devel

对于 Arch Linux:

bash 复制代码
sudo pacman -S --needed base-devel vips

2. 清除 npm 缓存

有时,清除 npm 缓存可以帮助解决安装问题:

bash 复制代码
npm cache clean --force

3. 重新安装 Tauri

安装完所需的依赖项后,尝试重新安装 Tauri:

bash 复制代码
npm install -g tauri

4. 检查 Node.js 和 npm 版本

确保您使用的是兼容的 Node.js 和 npm 版本。Tauri 通常与 LTS 版本的 Node.js 配合良好。您可以使用以下命令检查版本:

bash 复制代码
node -v
npm -v

如果需要切换 Node.js 版本,可以使用 nvm(Node 版本管理器)安装不同的版本:

bash 复制代码
nvm install --lts
nvm use --lts

5. 使用 Yarn 作为替代

如果您继续遇到 npm 的问题,可以尝试使用 Yarn 作为替代的包管理器:

bash 复制代码
npm install -g yarn
yarn global add tauri

6. 检查网络问题

错误信息中提到的 Request timed out 表示可能存在网络问题。确保您的互联网连接稳定,并且没有防火墙或代理设置阻止请求。

7. 查看日志文件

如果安装再次失败,请检查错误输出中提到的日志文件,以获取更多详细信息。

相关推荐
臣妾没空1 天前
里程碑5:完成框架npm包抽象封装并发布
前端·npm
sudo_jin1 天前
前端包管理器演进史:为什么 npm 之后,Yarn 和 pnpm 成了新宠?
前端·npm
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux