help-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cross compiling gsl for arm cortex M4 (nrf52)


From: Mark Galassi
Subject: Re: cross compiling gsl for arm cortex M4 (nrf52)
Date: Tue, 19 Sep 2023 10:49:43 -0600

Dear GSL bug followers,

Julius and I just had a session where we shared screens from Austria to New 
Mexico and figured it out.  This might be interesting to others who 
cross-compile gsl, so I'll show you the final bit that was missing.

After setting C_INCLUDE_PATH and other paths correctly, Julius was running this 
configure line:

./configure CC=/usr/local/gcc/bin/arm-none-eabi-gcc 
CXX=/usr/local/gcc/bin/arm-none-eabi-gcc 
LD=/usr/local/gcc/bin/arm-none-eabi-gcc AR=/usr/local/gcc/bin/arm-none-eabi-ar 
OBJCOPY=/usr/local/gcc/bin/arm-none-eabi-objcopy 
CFLAGS="-I/crosscompilearea/gsl-2.7.1/gsl -mthumb -march=armv7e-m 
-mfpu=fpv4-sp-d16 -mfloat-abi=soft" CXXFLAGS="-mthumb -march=armv7e-m 
-mfpu=fpv4-sp-d16 -mfloat-abi=soft" LDFLAGS="-I/crosscompilearea/gsl-2.7.1/gsl 
--specs=nano.specs --specs=nosys.specs -mthumb -march=armv7e-m 
-mfpu=fpv4-sp-d16 -mfloat-abi=soft" 
C_INCLUDE_PATH=“/crosscompilearea/gsl-2.7.1/gsl"  --target=arm-none-eabi 
--host=arm-none-eabi

Notice how you specify the Makefile variables CC, CXX, LD, AR, OBJCOPY, CFLAGS. 
 It turns out that you get *most* of the way there, but not all the way: the 
"ranlib" program also gets called in cross-compiling, and his computer's native 
ranlib was being called instead of the cross-compiling one for his target ARM 
architecture.

Once he put:

RANLIB=/usr/local/gcc/bin/arm-none-eabi-ranlib

to that litany it worked.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]