Следующая информация содержится в руководстве пользователя поставщика для встроенного дистрибутива Linux на поставляемой им аппаратной плате.
Разработчики могут поместить свою программу на устройство X-Linux через FTP или NFS. Перед запуском используйте команду ldd на рабочей станции разработки, чтобы проверить файлы зависимостей. Также поместите соответствующие файлы на X-Linux, чтобы убедиться, что программа может работать правильно. Вот пример, когда мы помещаем «syslinux» на X-Linux:
[root@X-Linux]:/sbin # ldd syslinux
linux-gate.so.1 => (0xb80a0000)
libc.so.6 => /lib/libc.so.6 (0xb7f60000)
/lib/ld-linux.so.2 (0xb80a1000)
[root@X-Linux]:/sbin #
Из сообщений выше,/lib/libc.so.6и/lib/ld-linux.so.2нужны syslinux. Поместите эти два файла в X-Linux, чтобы убедиться, что syslinux может работать правильно.
Мне придется написать программное обеспечение для работы на этом устройстве, и множество советов, которые я получил на Stack Exchange, направляют меня в направлениях, которые противоречат этому совету (предложение настроить определенную встроенную среду разработки, привязаться к более старым версиям libc, статическое связывание и т. д.). Является ли приведенная выше информация, предоставленная поставщиком, безопасным и надежным способом что-то сделать???
решение1
Тыможеткопировать библиотеки на встроенное устройство, при условии, что оно работает под управлением той же операционной системы на том же семействе архитектуры процессора. Ваше устройство имеетx86процессор, который относится к тому же семейству, что и 32-битные ПК. Поэтому, если на вашем настольном компьютере установлена 32-битная система Linux, вы можете копировать библиотеки и исполняемые файлы с вашего настольного компьютера на свое устройство.
С другой стороны, я не рекомендую делать так. Вы получите кучу файлов неизвестного происхождения, без возможности управлять зависимостями, обновлять или удалять программное обеспечение. Из того, что я понял из быстрого взгляда наруководство, X-Linux — это небольшая система Linux, которая не предназначена для расширения. Я рекомендую вместо этого установить другой дистрибутив Linux рядом или вместо X-Linux. Если другой дистрибутив находится рядом с X-Linux, запустите программы из этого дистрибутива вchroot(вы по-прежнему будете ограничены ядром X-Linux).
решение2
Надеюсь, под «рабочей станцией разработки» они подразумевали «встроенную среду разработки», поскольку в противном случае приложение, скорее всего, вообще не запустится из-за архитектурных различий (ошибок недопустимых инструкций).
TheустройствоСудя по всему, процессор x86 у него 32-битный, так что настроить его не составит труда, однако копирование библиотек из вашей (вероятной) 64-битной системы закончится катастрофой.