AnsweredAssumed Answered

Failed to build for SC589 in CCES on Linux

Question asked by jviki on May 12, 2016
Latest reply on Mar 20, 2018 by Jithul_Janardhanan

Hello,

 

I am starting using CCES on Linux. However, I've failed to build a simple program for SHARC. It seems like the linker does not like its own libraries. It didn't work for me in CCES nor by manual execution. I tested in virtualized Linux Ubuntu 16.04 (32b) and on Arch Linux (64b).

 

Building target: test

Invoking: CrossCore ARM Bare Metal C Linker

arm-none-eabi-gcc -mproc=ADSP-SC589 -msi-revision=1.0 -Wl,--gc-sections -mdebug-libs -o  "test"  "./system/sru/sru_config.o"  "./system/pinmux/GeneratedSources/pinmux_config.o"  "./system/mcapi/GeneratedSources/mcapi_config.o"  "./system/adi_initialize.o"  "./src/test.o"  -lm

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/sc589_rev_any/libm.a when searching for -lm

makefile:41: recipe for target 'test' failed

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lm

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/sc589_rev_any/libgcc.a when searching for -lgcc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lgcc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/sc589_rev_any/libfftacc.a when searching for -lfftacc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lfftacc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/sc589_rev_any/libm.a when searching for -lm

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lm

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/sc589_rev_any/libc.a when searching for -lc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lc

collect2: error: ld returned 1 exit status

make: *** [test] Error 1

 

[21:22] $ make CROSS=/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/arm-none-eabi-

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/arm-none-eabi-gcc -mproc=ADSP-SC589 -msi-revision=any -Wl,--gc-sections -o testl2

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/sc589_rev_any/libgcc.a when searching for -lgcc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lgcc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/sc589_rev_any/libfftacc.a when searching for -lfftacc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lfftacc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/sc589_rev_any/libm.a when searching for -lm

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lm

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: skipping incompatible /opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/sc589_rev_any/libc.a when searching for -lc

/opt/analog/cces/2.2.0/ARM/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/bin/ld: cannot find -lc

collect2: error: ld returned 1 exit status

Makefile:10: recipe for target 'testl2' failed

make: *** [testl2] Error 1

Outcomes