Forum Discussion
Altera_Forum
Honored Contributor
12 years agoOpenCL + Cyclone V SoC
Hello, Whilst I have lots of experience with embedded ARM C/Linux I'm new to FPGAs and new to OpenCL. I have a SoCKit plus some no doubt dumb questions: 1. It seems C2H is no longer suppor...
Altera_Forum
Honored Contributor
12 years ago --- Quote Start --- Having RTFM more carefully I've made a bit of progress. I've added this:
export AOCL_BOARD_PACKAGE_ROOT=$ALTERAOCLSDKROOT/board/c5soc which results in this: $ aoc --list-boards
Board list:
c5soc
$ make
/usr/bin/ld: skipping incompatible /home/jim/altera/13.1/hld/board/c5soc/host/arm32/lib/libalteracl.so when searching for -lalteracl
/home/jim/altera/13.1/hld/board/c5soc/host/arm32/lib/libalterahalmmd.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make: *** Error 1
$ cd device
$ aoc hello_world.cl --board c5soc
Error: aoc: Can't find a valid license for the Altera SDK for OpenCL I've also now read about the LM_LICENSE_FILE environment variable, but since I'm using the web edition of Quartus I don't have a license.dat. Is there any way of experimenting with this stuff on a Cyclone V without buying a Stratix V license? --- Quote End --- Hello Jim You are trying to compile/link arm code using x86 tools. First of all you have to install linaro tool chain for cross-compiling arm apps in x86. Mine is in /opt/altera-linux. 1) Modify your PATH environment export PATH=$PATH:/opt/altera-linux/linaro/gcc-linaro-arm-linux-gnueabihf-4.7-2012.11-20121123_linux/bin/ 2) Modify Makefile to use arm toolchain ... # OpenCL compile and link flags. AOCL_COMPILE_CONFIG := $(shell aocl compile-config) AOCL_LINK_CONFIG := $(shell aocl link-config) # Cross compiling stuff CROSS_COMPILE = arm-linux-gnueabihf- ... $(ECHO)$(CROSS_COMPILE)g++ $(CXXFLAGS) -fPIC $(foreach D,$(INC_DIRS),-I $(AOCL_COMPILE_CONFIG) $(SRCS) $(AOCL_LINK_CONFIG) \ $(foreach D,$(LIB_DIRS),-L$D) $(foreach L,$(LIBS),-l$L) ... Just make and that's all. This is the easy part. There are some steps missing 1) Generate FPGA kernel .aocx using aocl (I don't have an AOCL lic yet :-( ) 2) Get a working device driver running in arm host. I can compile and insmod the host driver (arm) but it cannot pass the tests (see my last post) I think we need support from Altera people (Dimitry Denisenko is the author of the host side driver ...) Good luck