Ошибка «Команда не найдена» при запуске программы

3711
dckrooney

Я пытаюсь запустить программу и продолжаю сталкиваться с "Command not found"ошибкой.

Я проверил, что соответствующий каталог находится $PATH, и что сам файл имеет разрешения на выполнение. Я попытался запустить его в каталоге с помощью ./programname, но безуспешно .

Я использую CentOS 6 с помощью csh.

0
О какой программе вы говорите? Michael K 12 лет назад 0
Консольный вывод будет полезен. Garrett 12 лет назад 0
@ MichaelK - Программа представляет собой предварительно собранный исполняемый файл, это не стандартная утилита Linux или что-то в этом роде. dckrooney 12 лет назад 0
@ gman- Единственный вывод, который я получаю, это "имя программы: Команда не найдена" dckrooney 12 лет назад 0
Что происходит, когда вы пытаетесь запустить его с `/ full / path / to / programname`? Как выглядит ваш PATH? David Schwartz 12 лет назад 0
@ DavidSchwartz - Когда я пытаюсь запустить его по абсолютному пути, я получаю «полный / путь / к / программе / имени программы: команда не найдена». Мой $ PATH содержит полный путь / путь / к программе / в качестве первой записи. dckrooney 12 лет назад 0
dcrooney - выглядит так, что через вас может отсутствовать ведущий слеш? / Полный / путь / к / программе Garrett 12 лет назад 0
Пожалуйста, напишите `ls -l / full / path / to / program / programname` Paul 12 лет назад 0

2 ответа на вопрос

1
Cougar

проверьте вывод " file ./programname " и " ldd ./programname ". Скорее всего, это скомпилировано для какой-то другой платформы или архитектуры, отличной от вашей.

Это именно то, что случилось. Мне непреднамеренно дали 32-битный двоичный файл; это приводило к некоторой проблеме при попытке выполнить ее на 64-битной машине :) Хотелось бы, чтобы ошибка была более описательной, чем "Команда не найдена", хотя ... dckrooney 12 лет назад 0
0
RedGrittyBrick

Попробуй это

% ls -l /bin/date -rwxr-xr-x 1 root root 58960 Jun 26 2008 /bin/date  % !!:2 /bin/date Tue Nov 15 18:04:50 EST 2011 

Но замените /bin/dateсвоим/full/path/to/programname

!!:2Представляет собой замену С истории оболочки !!означает предыдущую команду. :2означает третье слово (они нумеруются от 0)

Похожие вопросы