Я пишу простую программу шифрования с C для малины Pi. Он успешно скомпилирован для моего процессора X86 с gcc encoder.c -lcrypto -o encoder (я установил libssl-dev), но когда я хочу перекрестно скомпилировать его (с помощью arm-linux-gnueabihf-gcc), эта ошибка встречаются:Ошибка при перекрестном компиляции функции openssl C
$ arm-linux-gnueabihf-gcc encoder.c -lcrypto -o encoder
In file included from ./encoder.c:4:0:
/usr/include/openssl/aes.h:55:33: fatal error: openssl/opensslconf.h: No such file or directory
#include <openssl/opensslconf.h>
^
compilation terminated.
Как перекрестно скомпилировать приложение opensl C для малины Pi?
Самый простой способ - это, вероятно, SSH в RPI и работать непосредственно с устройством. Учетными данными по умолчанию являются имя пользователя *** 'pi' *** и пароль ***' малина' ***. В противном случае вам нужно настроить среду оболочки для кросс-компиляции. Вам нужно поставить цепочку инструментов и заголовки на путь, и вам нужно установить некоторые переменные типа 'CROSS_COMPILE'. Оформить комментарии в сценарии [Configure] (http://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/Configure). – jww
Спасибо. как вы предложили, я не могу напрямую установить пакеты armhf в систему x86. Это аналогичная проблема и обоснование: http://superuser.com/questions/1080869/how-do-download-a-debian-arm-package-from-another-computer – SAP
Вам необходим прямой доступ к устройству для встроенная сборка или вам нужно перекрестно скомпилировать. Если вы не можете использовать SSH в устройстве, и вы не можете перекрестно скомпилировать с помощью соответствующей инструментальной цепочки, то вы не сможете создавать программы для устройства. – jww