I can compile the CE Examples with the OpenEmbedded toolchain just fine, but when I switch to Linaro I get linker errors about undefined references for
- __aeabi_uidivmod
- atexit
- __aeabi_uidiv
However, these references come from the DSP / C6000 / XDC compiled objects, not in my code. My code compiles and links fine, up to the point that it links in with the DSP code.
The only change in the two setups is in dvsdk_3_01_00_10/Rules.make and in my project's xdcpaths.mak
Rules.make with OpenEmbedded
CSTOOL_DIR=$(OVEROTOP)/tmp/sysroots/i686-linux/usr/armv7a
CSTOOL_PREFIX=$(CSTOOL_DIR)/bin/arm-angstrom-linux-gnueabi-
xdcpaths.mak
CGTOOLS_V5T := $(OVEROTOP)/tmp/sysroots/i686-linux/usr/armv7a
CC_V5T := bin/arm-angstrom-linux-gnueabi-
Rules.make with Linaro
CSTOOL_DIR=/usr
CSTOOL_PREFIX=$(CSTOOL_DIR)/bin/arm-linux-gnueabi-
xdcpaths.mak
CGTOOLS_V5T := /usr
CC_V5T := bin/arm-linux-gnueabi-gcc
The problem seems to be an incompatibility between C6000CGT6.1.12/lib/libc.a and /usr/arm-linux-gnueabi/lib/libc.a when everything finally gets linked together.