Добрый день. Пытаюсь развернуть на хосте(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
Т.е. в путях к линкеру он присутствует, но почему он его не видит?