C :/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
C++ :/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
Target Root:/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi/usr/lib
单击finish,提示“Error in configuration process, project files may be invalid”,单击“OK”,参考下图进行配置。
CMAKE_CXX_FLAGS: -march=armv7ve -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi
CMAKE_EXE_LINKER_FLAGS: -lpthread -lrt -ldl
CMAKE_INSTALL_PREFIX: /home/elf/work/opencv-3.4.1/install
先后单击Configure和Generate,提示“Error in configuration process, project files may be invalid”,单击“OK”,参考下图进行配置。
4、修改文件。
elf@ubuntu:~/work/opencv-3.4.1$ vi 3rdparty/protobuf/src/google/protobuf/stubs/common.cc
在第44行添加#define HAVE_PTHREAD,保存并退出。
elf@ubuntu:~/work/opencv-3.4.1$ vi 3rdparty/libpng/pngpriv.h
将第130行修改为# if defined(PNG_ARM_NEON) && (defined(ARM_NEON) || defined(__ARM_NEON)) && \
5、编译。
elf@ubuntu:~/work/opencv-3.4.1$ cd build/
elf@ubuntu:~/work/opencv-3.4.1/build$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
elf@ubuntu:~/work/opencv-3.4.1/build$ make
6、安装。
elf@ubuntu:~/work/opencv-3.4.1/build$ make install
7、在/home/elf/work/opencv-3.4.1目录下会生成一个install目录,将此目录下的文件打包。
elf@ubuntu:~/work/opencv-3.4.1/build$ cd ../install
elf@ubuntu:~/work/opencv-3.4.1/install$ ls
bin include lib share
elf@ubuntu:~/work/opencv-3.4.1/install$ tar -cvjf opencv.tar.bz2 *
8、将压缩包拷贝到ELF 1开发板根目录下解压。
root@ELF1:~# cd /
root@ELF1:/# cp run/media/sda1/opencv.tar.bz2 .
root@ELF1:/# tar -xvf opencv.tar.bz2