页次: 1
node: /usr/local/lib/libcrypto.so.1.1: version `OPENSSL_1_1_1b' not found (required by node)
但是libcrypto.so.1.1还在啊,为什么说没有找到呢
离线
你从官方仓库更新的啊?那怎么会有/usr/local叻?
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
请删除你自行在 /usr/local 下安装的、与系统冲突的组件。
没找到的是指定的版本号。文件找到了,但是它不提供需要的版本的符号。
离线
请删除你自行在 /usr/local 下安装的、与系统冲突的组件。
没找到的是指定的版本号。文件找到了,但是它不提供需要的版本的符号。
谢谢,我本来想找一个libcrypto.so.1.1(OPENSSL_1_1_1b)这个版本的替换之前的那个,但删除了/usr/local/lib下的libcrypto.so.1.1之后nodejs就可以用了。之前给的提示是缺少对应版本号的文件,为什么直接把文件删除之后就没有错误提示了吗,是不是node所需要的文件不是libcrypto.so.1.1,但因为这个1.1版本的存在与所需要的产生冲突呢。有点好奇,但因为以后还要用这个系统所以无法鼓捣它。
最近编辑记录 Callopingpig (2019-11-16 20:08:34)
离线
你从官方源里安装的 nodejs,已经把它所需要的库依赖给你安装上了。只是你作为用户,安装的东西优先级更高,然而你的 libcrypto.so.1.1 不是 nodejs 能用的,就坏掉了。
不建议你往系统里的 /usr/local 塞核心库。
不知道为什么中文网络上有很多教程都是让你自行编译安装各种东西,和系统的东西打起架来那场面真的壮观。在 Arch Linux 上请不要这样的。请使用 pacman 管理你的系统。如果需要额外的软件包可以到 AUR 或者 [archlinuxcn] 仓库寻找,再不行自己写 PKGBUILD 吧……总之不要和 pacman 管的东西打架。
离线
谢谢
离线
不过话说回来如果手贱sudo npm install -g npm了的话那岂不是npm也要和pacman打架。
我觉得还是rust的解决方法好,全放~下面不理系统才好。或者说不要用pacman安装npm,而是自己在~下面去部署。
ecmascript是世界上最好的语言
离线
另外虽然我很喜欢arch跟进nodejs版本的速度,不过如果有人需要lts版本的话可能会挺麻烦的。
ecmascript是世界上最好的语言
离线
不过话说回来如果手贱sudo npm install -g npm了的话那岂不是npm也要和pacman打架。
我觉得还是rust的解决方法好,全放~下面不理系统才好。或者说不要用pacman安装npm,而是自己在~下面去部署。
是的。什么 npm 啊 pip 啊 gem 啊之类的,都不要往系统里装。/usr 交给 pacman 管理,需要的话自己找个地方建虚拟环境。
把库直接装在 ~ 下的标准路径(~/.local)下的时候也可能导致问题,因为系统工具在找库时会找到那里,然后发现版本不兼容,就坏了。
离线
另外虽然我很喜欢arch跟进nodejs版本的速度,不过如果有人需要lts版本的话可能会挺麻烦的。
AUR 裡有相應的包唷
离线
页次: 1