Узел "Не динамический исполняемый файл"

Я запускаю 14.04 на Linode и попробовал следовать этим инструкциям, чтобы установить 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 ответ

Вы обнаружили ограничения (64-битной установки) ldd-скрипта. Наименьшее, чего вы ожидаете, это жалоба на "неправильный класс ELF" Установите еще несколько 32-битных фрагментов, таких как 32-битный ld, и вы можете начать получать разумный вывод (ld - 32-битный загрузчик). Для этого необходим пакет libc6-i386.

Другие вопросы по тегам