Eu tenho que cruzar compilar opensawn
para uma placa OMAP4 e GMP é pré-requisito. Primeiro eu tentei no sistema operacional de 64 bits, mas isso me deu este erro:
configure: error: Oops, mp_limb_t is 64 bits, but the assembler code in this configuration expects 32 bits.
Então mudei para o Ubuntu 12.04 32 Bit e o GMP V6.0.0 foi compilado depois de algumas tentativas. Mesmo depois de ter as variáveis ARCH, TOOLCHAIN e CROSS_COMPILER em .bashrc
, tive que export
o seguinte:
export ARCH=arm<BR>
export PATH=/home/harsh32bit/Work/Projects/BSQ_VVDN/BISQUARE/gcc-SourceryCodeBenchLite-arm/bin/:$PATH<BR>
export CROSS_COMPILE=arm-none-linux-gnueabi-<BR>
Em seguida, os seguintes comandos foram observados:
./configure --build=i686-pc-linux-gnu --host=arm-none-linux-gnueabi --prefix=/home/harsh32bit/Work/Projects/BSQ_VVDN/BISQUARE/gcc-SourceryCodeBenchLite-arm/
make clean
make
make install
Em seguida, vinculando a biblioteca GMP ao Toolchain
~/Work/Projects/BSQ_VVDN/BISQUARE/gcc-SourceryCodeBenchLite-arm/lib/gcc/arm-none-linux-gnueabi/4.7.3
# ln -s ~/Work/Projects/BSQ_VVDN/packages/gmp-6.0.0/.libs/libgmp.so libgmp.so
Eu tive o GMP compilado com sucesso, embora o make check
tenha informado que todos os testes falharam.
9 of 9 tests failed.
Agora, quando tento compilar o Openswan-2.6.41 depois de fazer alterações no CROSSCOMPILE.sh e fazer isso make programs
, recebo este erro:
In file included from /home/harsh32bit/Work/Projects/BSQ_VVDN/packages/openswan-2.6.41/include/certs.h:24:0,from /home/harsh32bit/Work/Projects/BSQ_VVDN/packages/openswan-2.6.41/lib/libopenswan/id.c:42:
/home/harsh32bit/Work/Projects/BSQ_VVDN/packages/openswan-2.6.41/include/secrets.h:20:41: fatal error: gmp.h: No such file or directory
compilation terminated
Eu fui ao site da TI E2E para isso, cheirei a internet para os ponteiros nas últimas 4 semanas, mas não consegui descobrir. Se alguém tiver alguma pista sobre a compilação cruzada de openswan
e GMP
, por favor, avise-me.