Hi all,
I'm trying to add the ARM compute library on Xiling SDK to run a CNN on the Cortex A-9. I'm having a hard time trying to integrate it. To begin with, i downloaded the ComputeLibrary master folder at https://github.com/ARM-software/ComputeLibrary. Afterwards i have read the documentation at the "bare metal" paragraph. There is a link to download linaro, which i downloaded. I made a new c++ project on SDK and i choosed the linaro toolchain that i downloaded. Then i added the library in the folder services_sw but when i try compiling it, it gives several errors.
Can you help me please?
Hi,
Are you able to share with us the errors you receive please ? If I can't help then someone else might be able to.
Regards
Stuart
I think i'm doing it completely wrong. I have no idea what i am supposed to do.
Now i'm trying a different approach, without using Xilinx SDK and following the official documentation. Scons 2.3 or above is required to build the library. This is what i get on the terminal:
C:\ComputeLibrary-master>scons Werror=1 -j8 debug=0 neon=1 opencl=0 os=bare_metal arch=armv7a build=cross_compile cppthreads=0 openmp=0 standalone=1scons: Reading SConscript files ...IndexError: list index out of range: File "C:\ComputeLibrary-master\SConstruct", line 69: SConsignFile('build/%s/.scons' % build_path) File "C:\Python\Python37\scons\SCons\Script\SConscript.py", line 665: env = self.factory() File "C:\Python\Python37\scons\SCons\Script\SConscript.py", line 645: default_env = SCons.Defaults.DefaultEnvironment() File "C:\Python\Python37\scons\SCons\Defaults.py", line 88: _default_env = SCons.Environment.Environment(*args, **kw) File "C:\Python\Python37\scons\SCons\Environment.py", line 982: apply_tools(self, tools, toolpath) File "C:\Python\Python37\scons\SCons\Environment.py", line 107: env.Tool(tool) File "C:\Python\Python37\scons\SCons\Environment.py", line 1789: tool(self) File "C:\Python\Python37\scons\SCons\Tool\__init__.py", line 296: self.generate(env, *args, **kw) File "C:\Python\Python37\scons\SCons\Tool\default.py", line 40: for t in SCons.Tool.tool_list(env['PLATFORM'], env): File "C:\Python\Python37\scons\SCons\Tool\__init__.py", line 1266: c_compiler = FindTool(c_compilers, env) or c_compilers[0] File "C:\Python\Python37\scons\SCons\Tool\__init__.py", line 1169: if t.exists(env): File "C:\Python\Python37\scons\SCons\Tool\msvc.py", line 292: return msvc_exists(env) File "C:\Python\Python37\scons\SCons\Tool\MSCommon\vc.py", line 759: vcs = cached_get_installed_vcs(env) File "C:\Python\Python37\scons\SCons\Tool\MSCommon\vc.py", line 524: ret = get_installed_vcs(env) File "C:\Python\Python37\scons\SCons\Tool\MSCommon\vc.py", line 535: VC_DIR = find_vc_pdir(ver) File "C:\Python\Python37\scons\SCons\Tool\MSCommon\vc.py", line 344: comps = find_vc_pdir_vswhere(msvc_version) File "C:\Python\Python37\scons\SCons\Tool\MSCommon\vc.py", line 306: vc_pdir = os.path.join(vsdir[0], 'VC')
I have an example of building the Arm Compute Library for bare metal. It's for Cortex-R52 instead of Cortex-A9 but should be similar.
The setup is for building on Linux but maybe you can translate the commands to Windows or use VirtualBox or Docker Desktop.
https://github.com/ARM-software/Tool-Solutions/tree/master/ml-tool-examples/bare-metal
There is a top-level build_armcl_bm.sh to make sure the appropriate tools are setup.
Then there is a build.sh in the Cortex-R52 example area to build the library and a small bare metal example for Cortex-R52.
Thanks,
Jason
Thank you very much!!
At the moment i put aside the bare metal execution and i'm trying to build on Linux. I built the library and i made my own example. At this point i use the command:
arm-linux-gnueabihf-g++ examples/myexample.cpp utils/Utils.cpp -I. -Iinclude -std=c++11 -mfpu=neon -L. -larm_compute -larm_compute_core -o myexample
but i've been getting errors.
Then i tried to compile one of the examples in the example directory by giving the command:
arm-linux-gnueabihf-g++ examples/neon_convolution.cpp utils/Utils.cpp -I. -Iinclude -std=c++11 -mfpu=neon -L. -larm_compute -larm_compute_core -o neon_convolution
This is what i get:
I'm not sure what's missing.
Nevermind!! I figured it out
what did u do? i am getting the same error?