我在 Linode 上运行 14.04,并尝试以下操作这些说明安装 NVM,然后安装节点。我可以让 NVM 正常运行,但当我尝试运行它时,安装 Node 会导致出现神秘的“文件未找到”消息,即使文件列在正确的目录中。
NVM 的所有路径都是正确的,并且似乎没有任何冲突(或node
中都nodejs
没有列出),并且我已尝试使用其完整路径运行可执行文件。/usr/bin/
/usr/local/bin
我认为这可能是 32 位二进制问题,但运行file node
似乎表明它是一个 64 位可执行文件:
node: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
但是,运行ldd node
时会显示以下消息:
not a dynamic executable
我想知道我是否缺少一些共享库,但我不知道这些是什么。
另外,我如何知道是否存在悬空的符号链接?
答案1
您已经发现了 ldd 脚本(64 位安装)的局限性。您最不希望看到的是“错误的 ELF 类”的投诉。再安装几个 32 位组件,例如 32 位 ld,您可能会开始获得一些合理的输出(ld 是 32 位加载器)。所需的软件包是 libc6-i386。