Как исправить эту ошибку кросс-компиляции libgcrypt? - PullRequest
0 голосов
/ 11 февраля 2019

Я пытаюсь кросс-компилировать GPG для ElinOS на плате с imx6.У меня проблема при компиляции libgcrypt.Во-первых, вот что я делаю:

export PATH=/opt/elinos/cdk/arm/v7hf/glibc/bin:$PATH 
./configure --host=arm-unknown-linux-gnueabihf --build=i686-pc-linux-gnu 
make all

Конфигурационная часть не показывает ошибок или предупреждений, но make отображает это:

hwf-arm.c:31:3: error: #error Module build for wrong CPU.
 # error Module build for wrong CPU.
   ^
hwf-arm.c: In function 'get_hwcap':
hwf-arm.c:126:26: error: 'AT_HWCAP' undeclared (first use in this function)
       if (auxv.a_type == AT_HWCAP)
                          ^
hwf-arm.c:126:26: note: each undeclared identifier is reported only once for each function it appears in
hwf-arm.c:132:26: error: 'AT_HWCAP2' undeclared (first use in this function)
       if (auxv.a_type == AT_HWCAP2)
                          ^
In file included from hwf-arm.c:27:0:
hwf-arm.c: In function 'detect_arm_at_hwcap':
hwf-arm.c:159:23: error: 'arm_features' undeclared (first use in this function)
   for (i = 0; i < DIM(arm_features); i++)
                       ^
g10lib.h:96:24: note: in definition of macro 'DIM'
 #define DIM(v) (sizeof(v)/sizeof((v)[0]))
                        ^
hwf-arm.c: In function 'detect_arm_proc_cpuinfo':
hwf-arm.c:250:23: error: 'arm_features' undeclared (first use in this function)
   for (i = 0; i < DIM(arm_features); i++)
                       ^
g10lib.h:96:24: note: in definition of macro 'DIM'
 #define DIM(v) (sizeof(v)/sizeof((v)[0]))

Первая ошибка приводит меня к этой частикод:

#if !defined (__arm__) && !defined (__aarch64__)
# error Module build for wrong CPU.
#endif

Есть идеи, откуда это?Это похоже на проблему конфигурации, но я не уверен, где искать сейчас.

1 Ответ

0 голосов
/ 13 февраля 2019

В файле config.log CC был настроен правильно: CC='arm-unknown-linux-gnueabihf-gcc'.

Но мне нужно было указать это в команде make.Поэтому вместо простого использования make all, который не работал, я должен был использовать make all CC=arm-unknown-linux-gnueabihf-gcc.

...