Hi,
I am a new TI Sitara user for an embedded project. I have installed Sitara Linux SDK, which has the Linaro Toolchain. I want to use NE10 simply for DSP algorithm. Thus, it needs to set variable
GNULINUX_PLATFORM? (But I do not know how to set it)
It is not directly for Android. Excuse me for this non-Android question because I cannot find other appropriate forum for that.
After export the path:
SDK_INSTALL_DIR=$HOME/ti-sdk-am335x-evm-06.00.00.00
export PATH="$SDK_INSTALL_DIR/linux-devkit/sysroots/i686-arago-linux/usr/bin:$PATH"
the toolchain is verified that I can run it by:
But I still cannot build the NE10 library, please see the below message. I am new to GCC environment. Could you give me more detail information on Cmake or something other modification needed?
Regards,
........................
robert@robert-M5100:~/projectNe10-Ne10-4167142/build$ make
[ 1%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_abs.c.o
cc1: error: unrecognized command line option ‘-mthumb-interwork’
cc1: error: unrecognized command line option ‘-mthumb’
cc1: error: unrecognized command line option ‘-mfpu=vfp3’
/home/robert/projectNe10-Ne10-4167142/modules/math/NE10_abs.c:1:0: error: bad value (armv7-a) for -march= switch
make[2]: *** [modules/CMakeFiles/NE10.dir/math/NE10_abs.c.o] Error 1
make[1]: *** [modules/CMakeFiles/NE10.dir/all] Error 2
make: *** [all] Error 2
robert@robert-M5100:~/projectNe10-Ne10-4167142/build$ cmake -DCMAKE_TOOLCHAIN_FILE=../config.cmake ..
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
CMAKE_TOOLCHAIN_FILE
-- Build files have been written to: /home/robert/projectNe10-Ne10-4167142/build
robert@robert-M5100:~/projectNe10-Ne10-4167142/build$
Hi
I think you need to modify the "GNUlinux_config.cmake" according to your toolchain.
Currently the hard float support has been added into Ne10 library.
Take hard float Linaro gcc 4.8 as an example, you need to do:
1. modify the "GNUlinux_config.cmake"
set(GNULINUX_PLATFORM ON)
set(CMAKE_C_COMPILER arm-linux-gnueabi-gcc) ===>>>set(CMAKE_C_COMPILER \your_toolchain_path\arm-linux-gnueabihf-gcc) set(CMAKE_CXX_COMPILER arm-linux-gnueabi-g++) ===>>>set(CMAKE_CXX_COMPILER \your_toolchain_path\arm-linux-gnueabihf-g++)
set(CMAKE_ASM_COMPILER arm-linux-gnueabi-as)===>>>set(CMAKE_ASM_COMPILER \your_toolchain_path\arm-linux-gnueabihf-as)
find_program(CMAKE_AR NAMES "arm-linux-gnueabi-ar") ===>>>find_program(CMAKE_AR NAMES "\your_toolchain_path\arm-linux-gnueabihf-ar") mark_as_advanced(CMAKE_AR)
find_program(CMAKE_RANLIB NAMES "arm-linux-gnueabi-ranlib") ===>>>find_program(CMAKE_RANLIB NAMES "\your_toolchain_path\arm-linux-gnueabihf-ranlib")
mark_as_advanced(CMAKE_RANLIB)
2. build Ne10 with cmake
mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../GNUlinux_config.cmake ..
make
Note: if you are building for Android, you need to add -DNE10_ARM_HARD_FLOAT=ON
then the Ne10 library is built