Dvsdk

From Attie's Wiki
Jump to: navigation, search

These notes relate to the dvsdk_dm3730-evm_04_03_00_06 package.

Contents

Pre-Install

# put `uname 0022` somewhere in your persistent environment
 
# kill off dash
sudo dpkg-reconfigure dash
 
# install fakeroot
sudo apt-get install fakeroot

Post-Install

The VERY first thing you should do is make clean. Mainly because TI are stupid, and don't understand the concept of making a packaged release - the SDK will come with part-built directories, some of which will make your build break with very weird errors.

It's usually a good idea to keep hold of the installed SDK directory. Most of the files were downloaded (not included in that ~1.5GB+ file you just 'executed').

Either make a tarball, use git, whatever

./setup.sh
. linux-devkit/environment-setup
make clean

Pre-Use

. linux-devkit/environment-setup

Some Fixes

1. uhh

$ make clean
 
-- SNIP ---
 
make[2]: Entering directory `/home/agrande/dvsdk_dm3730-evm_04_03_00_06_linux/graphics-sdk_4.03.00.02/tools/devmem2'
rm -rf ./Obj *.o
make[2]: Leaving directory `/home/agrande/dvsdk_dm3730-evm_04_03_00_06_linux/graphics-sdk_4.03.00.02/tools/devmem2'
make[2]: Entering directory `/home/agrande/dvsdk_dm3730-evm_04_03_00_06_linux/graphics-sdk_4.03.00.02/tools/devmem2'
mkdir -p ./Obj
arm-arago-linux-gnueabi-gcc -Wall -DRELEASE -O2 -c   devmem2.c -o Obj/devmem2.o
devmem2.c: In function 'main':
devmem2.c:104: warning: format '%X' expects type 'unsigned int', but argument 2 has type 'off_t'
devmem2.c:104: warning: format '%X' expects type 'unsigned int', but argument 4 has type 'long unsigned int'
devmem2.c:123: warning: format '%X' expects type 'unsigned int', but argument 2 has type 'long unsigned int'
devmem2.c:123: warning: format '%X' expects type 'unsigned int', but argument 3 has type 'long unsigned int'
mkdir -p ./Obj
arm-arago-linux-gnueabi-g++ -o ./Obj/devmem2 ./Obj/devmem2.o    -lm -ldl -L/lib -Wl  
/lib/../../lib/libc.so.6: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[2]: *** [Obj/devmem2] Error 1
make[2]: Leaving directory `/home/agrande/dvsdk_dm3730-evm_04_03_00_06_linux/graphics-sdk_4.03.00.02/tools/devmem2'
make[1]: *** [builddevmem2] Error 2
make[1]: Leaving directory `/home/agrande/dvsdk_dm3730-evm_04_03_00_06_linux/graphics-sdk_4.03.00.02'
make: *** [opengldemos_clean] Error 2

So yup, I said clean, and it's just cleaned, and then proceeded to build (or at least try) devmem2

Turns out you need to set the following to let it build devmem2 (grr... this is not cleaning):

export TOOLCHAIN=${LIBTOOL_SYSROOT_PATH}

Try putting it in linux-devkit/environment-setup

2. whut?

Making all in subdirectory c6accel_app...
make -C app         PLATFORM_XDC=ti.platforms.evm3530 
make[3]: Entering directory `/home/agrande/ti-dvsdk_dm3730-evm_04_03_00_06/c6accel_1_01_00_07/soc/app'
 
Linking c6accel_app from appMain.o c6accel_testfxns.o ../c6accelw/lib/c6accelw_omap3530.a470MV c6accel_app_config/linker.cmd..
@ /home/agrande/ti-dvsdk_dm3730-evm_04_03_00_06/linux-devkit//bin/arm-arago-linux-gnueabi-gcc -L/lib -lm -lpthread -o c6accel_app appMain.o c6accel_testfxns.o ../c6accelw/lib/c6accelw_omap3530.a470MV c6accel_app_config/linker.cmd
/lib/../../lib/libpthread.so.0: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[3]: *** [c6accel_app] Error 1
make[3]: Leaving directory `/home/agrande/ti-dvsdk_dm3730-evm_04_03_00_06/c6accel_1_01_00_07/soc/app'
make[2]: *** [c6accel_app] Error 2
make[2]: Leaving directory `/home/agrande/ti-dvsdk_dm3730-evm_04_03_00_06/c6accel_1_01_00_07/soc'
make[1]: *** [c6accel] Error 2
make[1]: Leaving directory `/home/agrande/ti-dvsdk_dm3730-evm_04_03_00_06/c6accel_1_01_00_07'
make: *** [c6accel] Error 2

See that? It's using a cross compiler (fine) and specifying the host's libraries to link with (not fine)!

To fix it, just remove -L$(LINUXLIBS_INSTALL_DIR)/lib from c6accel_1_01_00_07/soc/app/Makefile:75 to give:

LD_FLAGS += -lm -lpthread
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox