LINUX.ORG.RU

Сообщения megaloldean

 

Кросс-компиляция wiringPi с динамическими библиотеками

Форум — Development

Добрый день. Пытаюсь развернуть на хосте(x86) сборку проекта для orange pi zero 3 (aarch64).

1. На устройстве aarch64 собрал wiringPi и проверил его работоспособность. 2. На хосте ставил и gcc linaro и собирал ct-ng для aarch64. Простые проекты типо hello-world запускались на устройстве. 3. Для кросс-компиляции я скопировал с устройства aarch64 на x86 в sysroot следующие директории: usr/local/lib usr/lib usr/include

Вывод компилятора:

Building file: ../src/cr_gpio.c
Invoking: Cross GCC Compiler
aarch64-unknown-linux-gnu-gcc -I/root/project/cross_t1/opi-sysroot/usr/include -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/cr_gpio.d" -MT"src/cr_gpio.o" -o "src/cr_gpio.o" "../src/cr_gpio.c"
Finished building: ../src/cr_gpio.c

Вывод линкера:

Building target: cr_gpio
Invoking: Cross GCC Linker
aarch64-unknown-linux-gnu-gcc -L/root/project/cross_t1/opi-sysroot/local -L/root/project/cross_t1/opi-sysroot/usr/lib -o "cr_gpio" ./src/cr_gpio.o    -lwiringPi -lwiringPiDev -lcrypt -lm -lrt -lpthread
/home/dean/x-tools/aarch64-unknown-linux-gnu/lib/gcc/aarch64-unknown-linux-gnu/13.2.0/../../../../aarch64-unknown-linux-gnu/bin/ld.bfd: cannot find -lcrypt: Нет такого файла или каталога
collect2: error: ld returned 1 exit status
make: *** [makefile:43: cr_gpio] Ошибка 1
"make all" terminated with exit code 2. Build might be incomplete.

Тут я отправился на поиски crypt:

find . -name libcryp*

Найден был:

./opi-sysroot/usr/lib/aarch64-linux-gnu/libcrypt.so

Т.е. в путях к линкеру он присутствует, но почему он его не видит?

 , , ,

megaloldean
()

RSS подписка на новые темы