View Single Post
  #3   Spotlight this post!  
Unread 18-02-2015, 07:41
KJaget's Avatar
KJaget KJaget is offline
Zebravision Labs
FRC #0900
Team Role: Mentor
 
Join Date: Dec 2014
Rookie Year: 2015
Location: Cary, NC
Posts: 37
KJaget has much to be proud ofKJaget has much to be proud ofKJaget has much to be proud ofKJaget has much to be proud ofKJaget has much to be proud ofKJaget has much to be proud ofKJaget has much to be proud ofKJaget has much to be proud of
Re: Team 900 - nVIDIA Jetson TK1 OpenCV Co-Processor

Quote:
Originally Posted by memyselfandi View Post
Team 3826 is trying to use the Jetson. We pulled the source code from the link "nVIDIA Jetson TK1 Code:". We've tried to compile it and are getting the following errors:

$ make
-- Configuring done
-- Generating done
-- Build files have been written to: /home/mgb/900_opencv/frisbeelocating
Scanning dependencies of target testing
[ 50%] Building CXX object CMakeFiles/testing.dir/gpuTesting.cpp.o
c++: warning: ‘-mcpu=’ is deprecated; use ‘-mtune=’ or ‘-march=’ instead
c++: error: unrecognized command line option ‘-mfpu=neon-vfpv4’
c++: error: unrecognized command line option ‘-mvectorize-with-neon-quad’
make[2]: *** [CMakeFiles/testing.dir/gpuTesting.cpp.o] Error 1
make[1]: *** [CMakeFiles/testing.dir/all] Error 2
make: *** [all] Error 2
[1]- Done emacs Makefile.cmake (wd: ~/900_opencv/frisbeelocating/CMakeFiles)
(wd now: ~/900_opencv/frisbeelocating)
[2]+ Done emacs CMakeCache.txt


I've found the -mcpu can be changed to -mtune using the same parameter to remove the -mcpu error, however, we don't see a work around for the other two errors.

We're compiling on ubuntu on a VirtualBox VM running on Win7 with the Jetson TK1 installed. Have this been seen before? Any suggestions?

Thank you.
Looks like you're compiling for x86 rather than ARM. Remove those two ARM-specific options and the code should build correctly. Or alternatively, you could push the code to a Jetson board and build there and things should just work.

If you're trying to cross-compile (build ARM binaries on an x86 Linux host machine) you'll need to point to the correct compiler. The compiler name is usually of the form "arm-none-linux-gnueabihf-g++" or the like. Sometimes "none" is called "unknown" instead, but the general idea is the same.

If you are planning to run on x86, be aware that the code is written to run on the GPU. If I remember there are fallbacks to run on the CPU, but the CPU code wasn't the focus of our development effort so it may be different than the GPU code.