файл libssh в качестве примера - должностное лицо formate ошибка

Я следовал руководству ssh для создания соединения SSH и после компиляции... Выполнение файла не работает. Ошибка, которую я получаю:

./sshtest
bash: ./sshtest: cannot execute binary file: Exec format error

и если я работаю как sudo

./sshtest: 1: ./sshtest: Syntax error: "(" unexpected

Я дал двоичный файл r+x:

-rwxr-xr-x  1 me me  6328 Oct 21 01:54 sshtest

И вот то, как я компилирую:

gcc -Wall -c sshtest1.c  -o sshtest  -lssh

Информация о компьютере:

uname -a
Linux me 4.4.0-161-generic #189-Ubuntu SMP Tue Aug 27 08:10:16 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

У кого-либо есть какие-либо идеи о том, почему двоичному файлу не удалось бы выполниться? Сообщите мне, необходима ли минута жизнеспособная сборка.

Спасибо!

0
задан 21 October 2019 в 12:08

1 ответ

man gcc ясно состояния:

-c опция говорит для не выполнения компоновщика.

Это не параметр для обеспечения *.c файлы, поскольку Вы, возможно, думали …

Удалите -c опция связать Вашу программу, таким образом создавая исполняемый двоичный файл.

gcc -Wall sshtest1.c -o sshtest -lssh

Я дал двоичный файл r+x

Это сделано автоматически для связанных двоичных файлов.

если я работаю как sudo

Не использовать sudo как серебряная пуля! Выполняя плохое, not-well-understood программа с sudo не заставит его работать волшебно, но может увеличить вред, который это могло причинить!

2
ответ дан 22 December 2019 в 00:16

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

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