Я хочу выполнить unity3d на своем ударе для помещения псевдонима и .desktop записей. Однако это оказывается более трудным.
Ошибка заголовка появляется, я пробую команду:
bash path/to/program
При поиске сайта это, кажется, проблема совместимости. Таким образом, когда я пробую команду файла, вывод:
program: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=8020f3d60eff5b41c53e6b60a9e2d43802e28f93, not stripped
в то время как моя система является x86_64.
Однако, когда я перехожу непосредственно к папке и запускаю программу как
./program
прогоны программы обычно.
Я не вижу, как это может быть проблемой совместимости с моей системой, когда я могу запустить программу с./программировать, но не с программой удара
Как примечание, я использую zsh, и я не уверен, вмешивается ли это всегда.
Когда Вы делаете bash some/file
, колотите чтения, что файл, анализирует свое содержание согласно синтаксическим правилам удара и выполняет получающиеся команды. Правильные файлы обычно называют "сценариями", и их содержание во многом как то, что Вы на самом деле выводите в оболочке. Скомпилированные программы содержат машинные команды. Вы используете zsh - Вы ожидаете, что это поймет машинные команды? Zsh не делает, и ни один действительно не колотит.
, Если Вы хотите использовать удар для выполнения команды, используйте -c
опция:
bash -c '/some/command'
, Но нет большого количества точки к выполнению поэтому, когда сама команда является исполняемым файлом. Если можно работать, это с помощью /some/command
, то используйте его непосредственно.
В командной строке в ударе, zsh или другой оболочке, можно записать /path/to/program
, или cd /path/to; ./program
оба должны дать тот же результат.. то, что прогоны программы.
File говорит Вам, что это - двоичная исполняемая программа.. в противоположность сценарию на некотором языке thet должен быть интерпретирован некоторой оболочкой или другой программой.