Недавно я пытался кросс-компилировать программы для ARM. Однако, когда я запускаю make
, я всегда получаю ошибку в течение минуты или меньше, которая говорит что-то вроде
/usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lgio-2.0.
Меня смущает то, что я получаю эту ошибку каждый раз, когда пытаюсь пересечь скомпилируйте программу (за исключением того, что она не всегда говорит, что не может найти -lgio-2.0. У нее тоже есть проблемы с поиском других вещей). Я что-то не так делаю? Почему всегда эта ошибка? Единственная программа, которую я смог успешно кросс-компилировать, это bash, но у меня были проблемы со всем остальным. Что я делаю? У меня установлены все библиотеки и все остальное, так как я могу нормально скомпилировать программы.
Как упомянуто muru. Необходимо установить архитектуру ARM той библиотеки. Однако они не перечислены на сайте http://packages.ubuntu.com. Ни один, легко управлять зависимостями вручную тот путь.
Примечание: Установка a chroot
среда, я нашел странное поведение, когда я добавил armhf
архитектура к моей Ubuntu 15.04 amd64. Я использовал dpkg --add-architecture=armhf
. APT начинает жаловаться на поврежденный пакет wine
и попробованный для удаления всех i386
пакеты.
Добавьте новый исходный файл
sudo nano /etc/apt/sources.list.d/arm-repo.list
Добавьте источник архитектуры, Вы хотите и выпускаете Вас, имеют.
deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports trusty main universe
Проверьте на доступную дугу здесь: http://ports.ubuntu.com/ubuntu-ports/dists/trusty/main/, поскольку можно просмотреть/вниз для различных выпусков.
Список пакета обновления
sudo apt-get update
Добавьте dpkg конфигурацию
sudo nano /etc/dpkg/dpkg.cfg.d/multiarch
с этой строкой
foreign-architecture armhf
Пакеты потребности установки по мере необходимости, пример:
sudo apt-get install libglib2.0-0:armhf
Ссылки:
Можно также загрузить пакет, кросс-скомпилировать его с помощью arm-linux-gnueabihf и разместить библиотеки в соответствующие папки arm-linux-gnueabihf каталога компилятора в/usr /