Coder Social home page Coder Social logo

Comments (11)

denolf avatar denolf commented on July 23, 2024

Hi Amir,

Can you provide us some more details so that we can reproduce your issue?

  • Xilinx tool version
  • CMake command and output

Thanks

Kristof

from pynq-computervision.

amirkiperwas avatar amirkiperwas commented on July 23, 2024

All tools are 2018.2 (SDK, Vivado, SDx)
CMake command and output:

cmake .. -DCMAKE_TOOLCHAIN_FILE=../../../frameworks/cmakeModules/toolchain_sdx2018.2.cmake -DSDxPlatform=/work/SDxPlatforms/ultra/ -DSDxClockID=1 -DusePL=ON -DnoBitstream=OFF -DnoSDCardImage=ON -DSDxArch=arm64
-- SDx platform: /work/SDxPlatforms/ultra/ , clock ID: 1, aarch: arm64 bit
-- Selected Options: usePL=ON, noBitstream: OFF, noSDCardImage=ON
-- CMAKE C FLAGS -sds-pf /work/SDxPlatforms/ultra/ -dmclkid 1 -mno-boot-files -mstrict-align -hls-target 1
-- SDx sysroot: /opt/Xilinx/SDK/2018.2/gnu/aarch64/lin/aarch64-linux/aarch64-linux-gnu/libc
-- OpenCV library status:
-- version: 2.4.9.1
-- libraries: opencv_videostab;opencv_video;opencv_ts;opencv_superres;opencv_stitching;opencv_photo;opencv_ocl;opencv_objdetect;opencv_ml;opencv_legacy;opencv_imgproc;opencv_highgui;opencv_gpu;opencv_flann;opencv_features2d;opencv_core;opencv_contrib;opencv_calib3d
-- include path: /usr/include/opencv;/usr/include
-- VIVADO HLS base path:
-- VIVADO HLS FOUND SO ON
-- VivadoHLS status:
-- found: ON
-- include path: /opt/Xilinx/Vivado/2018.2/include;/opt/Xilinx/Vivado/2018.2/include/hls
-- xfOpenCV CV base path: /work/XFOPENCV/xfopencv/
-- xfOpenCV FOUND SO ON
-- xfOpenCV include dirs: /work/XFOPENCV/xfopencv/include
-- PROJECT_SOURCE_DIR: /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay
-- CMAKE_INCLUDE_PATH: /opt/Xilinx/SDK/2018.2/gnu/aarch64/lin/aarch64-linux/aarch64-linux-gnu/libc/usr/
-- CMAKE_LIBRARY_PATH: /opt/Xilinx/SDK/2018.2/gnu/aarch64/lin/aarch64-linux/aarch64-linux-gnu/libc/lib
-- CMAKE_PREFIX_PATH:
-- Python include path: /usr/include/python2.7
-- Numpy include path: /usr/include
-- ADDING myFirstOverlay target
-- Creating xfBitwise_not.cpp
-- Creating xfBoxFilter.cpp
-- wrapper cpp file list src/xfBitwise_not;src/xfBitwise_notCoreForVivadoHLS;src/xfBoxFilter;src/xfBoxFilterCoreForVivadoHLS
-- working on flags for component bitwise_not
-- generating flags for bitwise_not
-- working on flags for component boxFilter
-- generating flags for boxFilter
-- SDxCompileFlags -sds-hw "xf::boxFilter<0,3,0,1080,1920,1>" xfBoxFilterCoreForVivadoHLS.cpp -files /work/XFOPENCV/xfopencv/include/imgproc/xf_box_filter.hpp -clkid 1 -sds-end -sds-hw "xf::bitwise_not<0,1080,1920,1>" xfBitwise_notCoreForVivadoHLS.cpp -files /work/XFOPENCV/xfopencv/include/core/xf_arithm.hpp -clkid 1 -sds-end -fpic -sds-sys-config linux -sds-proc linux
-- Configuring done
-- Generating done
-- Build files have been written to: /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build

from pynq-computervision.

denolf avatar denolf commented on July 23, 2024

HI Amir,

Thanks for this extra information. It looks like the wrong sysroot is being picked up, instead of the one from the Ultra96 bare platform package. CMake is trying to find
sw/sysroot as subfolder in your SDxPlatform (in your case -DSDxPlatform=/work/SDxPlatforms/ultra).
Can you confirm you indeed have a folder /work/SDxPlatforms/ultra/sw/sysroot on your system?

Regards

Kristof

from pynq-computervision.

amirkiperwas avatar amirkiperwas commented on July 23, 2024

Hi Kristof,
I indeed have that folder:

ls -lt /work/SDxPlatforms/ultra
total 12
drwxrwxr-x 2 amirki amirki 4096 Dec 17 22:58 hw
drwxrwxr-x 4 amirki amirki 4096 Dec 12 19:28 sw
-rw-rw-r-- 1 amirki amirki 575 Dec 12 18:50 ultra.xpfm

and

ls -lt /work/SDxPlatforms/ultra/sw/sysroot/
total 12
-rw-rw-r-- 1 amirki amirki 394 Dec 12 19:32 license_info.txt
drwxrwxr-x 6 amirki amirki 4096 Oct 18 00:23 usr
drwxrwxr-x 3 amirki amirki 4096 Oct 17 23:44 lib

Amir

from pynq-computervision.

denolf avatar denolf commented on July 23, 2024

Hi Amir,

That indeed seems OK. Can you try forcing the sysroot path using the SDxSysroot variable, so your cmake command would become something like:

cmake .. -DCMAKE_TOOLCHAIN_FILE=../../../frameworks/cmakeModules/toolchain_sdx2018.2.cmake -DSDxPlatform=/work/SDxPlatforms/ultra/ -DSDxSysroot=/work/SDxPlatforms/ultra/sw/sysroot -DSDxClockID=1 -DusePL=ON -DnoBitstream=OFF -DnoSDCardImage=ON -DSDxArch=arm64

Then reply with the CMake output.

Thanks

Kristof

from pynq-computervision.

amirkiperwas avatar amirkiperwas commented on July 23, 2024

Hi Kristof,

cmake .. -DCMAKE_TOOLCHAIN_FILE=../../../frameworks/cmakeModules/toolchain_sdx2018.2.cmake -DSDxPlatform=/work/SDxPlatforms/ultra/ -DSDxSysroot=/work/SDxPlatforms/ultra/sw/sysroot -DSDxClockID=1 -DusePL=ON -DnoBitstream=OFF -DnoSDCardImage=ON -DSDxArch=arm64
-- SDx platform: /work/SDxPlatforms/ultra/ , clock ID: 1, aarch: arm64 bit
-- Selected Options: usePL=ON, noBitstream: OFF, noSDCardImage=ON
-- CMAKE C FLAGS -sds-pf /work/SDxPlatforms/ultra/ -dmclkid 1 -mno-boot-files -mstrict-align -hls-target 1
-- SDx sysroot: /work/SDxPlatforms/ultra/sw/sysroot
-- OpenCV library status:
-- version: 2.4.9.1
-- libraries: opencv_videostab;opencv_video;opencv_ts;opencv_superres;opencv_stitching;opencv_photo;opencv_ocl;opencv_objdetect;opencv_ml;opencv_legacy;opencv_imgproc;opencv_highgui;opencv_gpu;opencv_flann;opencv_features2d;opencv_core;opencv_contrib;opencv_calib3d
-- include path: /usr/include/opencv;/usr/include
-- VIVADO HLS base path:
-- VIVADO HLS FOUND SO ON
-- VivadoHLS status:
-- found: ON
-- include path: /opt/Xilinx/Vivado/2018.2/include;/opt/Xilinx/Vivado/2018.2/include/hls
-- xfOpenCV CV base path: /work/XFOPENCV/xfopencv/
-- xfOpenCV FOUND SO ON
-- xfOpenCV include dirs: /work/XFOPENCV/xfopencv/include
-- PROJECT_SOURCE_DIR: /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay
-- CMAKE_INCLUDE_PATH: /work/SDxPlatforms/ultra/sw/sysroot/usr/
-- CMAKE_LIBRARY_PATH: /work/SDxPlatforms/ultra/sw/sysroot/lib
-- CMAKE_PREFIX_PATH:
-- Python include path: /usr/include/python2.7
-- Numpy include path: /usr/include
-- ADDING myFirstOverlay target
-- Creating xfBitwise_not.cpp
-- Creating xfBoxFilter.cpp
-- wrapper cpp file list src/xfBitwise_not;src/xfBitwise_notCoreForVivadoHLS;src/xfBoxFilter;src/xfBoxFilterCoreForVivadoHLS
-- working on flags for component bitwise_not
-- generating flags for bitwise_not
-- working on flags for component boxFilter
-- generating flags for boxFilter
-- SDxCompileFlags -sds-hw "xf::boxFilter<0,3,0,1080,1920,1>" xfBoxFilterCoreForVivadoHLS.cpp -files /work/XFOPENCV/xfopencv/include/imgproc/xf_box_filter.hpp -clkid 1 -sds-end -sds-hw "xf::bitwise_not<0,1080,1920,1>" xfBitwise_notCoreForVivadoHLS.cpp -files /work/XFOPENCV/xfopencv/include/core/xf_arithm.hpp -clkid 1 -sds-end -fpic -sds-sys-config linux -sds-proc linux
-- Configuring done
-- Generating done
-- Build files have been written to: /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build

This helps and the C objects are built. I now get a different error:

make myFirstOverlay
Scanning dependencies of target myFirstOverlay
[ 14%] Building CXX object CMakeFiles/myFirstOverlay.dir/src/xfBitwise_not.o
Create data motion intermediate representation
Compiling /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/xfBitwise_not.cpp
sds++ log file saved as /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/reports/sds_xfBitwise_not.log

[ 28%] Building CXX object CMakeFiles/myFirstOverlay.dir/src/xfBitwise_notCoreForVivadoHLS.o
Processing -sds-hw block for xf::bitwise_not<0,1080,1920,1>
Create data motion intermediate representation
Performing accelerator source linting for w0_xf_bitwise_not
Performing pragma generation
INFO: [PragmaGen 83-3231] Successfully generated tcl script: /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/vhls/w0_xf_bitwise_not.tcl
Moving function w0_xf_bitwise_not to Programmable Logic
sds++ log file saved as /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/reports/sds_xfBitwise_notCoreForVivadoHLS.log

[ 42%] Building CXX object CMakeFiles/myFirstOverlay.dir/src/xfBoxFilter.o
Create data motion intermediate representation
Compiling /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/xfBoxFilter.cpp
sds++ log file saved as /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/reports/sds_xfBoxFilter.log

[ 57%] Building CXX object CMakeFiles/myFirstOverlay.dir/src/xfBoxFilterCoreForVivadoHLS.o
Processing -sds-hw block for xf::boxFilter<0,3,0,1080,1920,1>
Create data motion intermediate representation
Performing accelerator source linting for w1_xf_boxFilter
Performing pragma generation
INFO: [PragmaGen 83-3231] Successfully generated tcl script: /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/vhls/w1_xf_boxFilter.tcl
Moving function w1_xf_boxFilter to Programmable Logic
sds++ log file saved as /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/reports/sds_xfBoxFilterCoreForVivadoHLS.log

[ 71%] Building C object CMakeFiles/myFirstOverlay.dir/work/XFOPENCV/PYNQ-ComputerVision/frameworks/utilities/xF/PynqLib/src/pynqlib.o
Create data motion intermediate representation
Compiling /work/XFOPENCV/PYNQ-ComputerVision/frameworks/utilities/xF/PynqLib/src/pynqlib.c
sdscc log file saved as /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/reports/sds_pynqlib.log

[ 85%] Building CXX object CMakeFiles/myFirstOverlay.dir/src/cv_xilinx.o
Create data motion intermediate representation
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:248:6: warning: function 'pyopencv_tocv::KeyPoint' has internal linkage but is not defined [-Wundefined-internal]
bool pyopencv_to(PyObject* obj, T& p, const char* name = "");
^
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:981:13: note: used here
if(!pyopencv_to(item, value[i], info))
^
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:251:11: warning: function 'pyopencv_fromcv::KeyPoint' has internal linkage but is not defined [-Wundefined-internal]
PyObject* pyopencv_from(const T& src);
^
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:994:26: note: used here
PyObject* item = pyopencv_from(value[i]);
^
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:248:6: warning: function 'pyopencv_tocv::DMatch' has internal linkage but is not defined [-Wundefined-internal]
bool pyopencv_to(PyObject* obj, T& p, const char* name = "");
^
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:981:13: note: used here
if(!pyopencv_to(item, value[i], info))
^
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:251:11: warning: function 'pyopencv_fromcv::DMatch' has internal linkage but is not defined [-Wundefined-internal]
PyObject* pyopencv_from(const T& src);
^
/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp:994:26: note: used here
PyObject* item = pyopencv_from(value[i]);
^
Compiling /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/cv_xilinx.cpp
sds++ log file saved as /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/reports/sds_cv_xilinx.log

[100%] Linking CXX shared library libmyFirstOverlay.so
Platform system configuration option -sds-sys-config was not specified, searching for a configuration that uses the specified OS linux
Using system configuration -sds-sys-config linux
Analyzing object files
... /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/xfBitwise_not.o
... /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/xfBitwise_notCoreForVivadoHLS.o
... /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/xfBoxFilter.o
... /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/xfBoxFilterCoreForVivadoHLS.o
... /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/work/XFOPENCV/PYNQ-ComputerVision/frameworks/utilities/xF/PynqLib/src/pynqlib.o
... /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/cv_xilinx.o
... /usr/lib/x86_64-linux-gnu/libopencv_videostab.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_ts.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_superres.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_stitching.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_ocl.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_gpu.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_contrib.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.9
... /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.9
Generating data motion network
INFO: [DMAnalysis 83-4494] Analyzing hardware accelerators...
INFO: [DMAnalysis 83-4497] Analyzing callers to hardware accelerators...
WARNING: [DMAnalysis 83-4492] Unable to determine the memory attributes passed to src.data of function w0_xf_bitwise_not at /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/xfBitwise_notCoreForVivadoHLS.cpp:49, please use mem_attribute pragma to specify
WARNING: [DMAnalysis 83-4492] Unable to determine the memory attributes passed to dst.data of function w0_xf_bitwise_not at /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/src/xfBitwise_notCoreForVivadoHLS.cpp:49, please use mem_attribute pragma to specify
INFO: [DMAnalysis 83-4444] Scheduling data transfer graph for partition 0
INFO: [DMAnalysis 83-4446] Creating data motion network hardware for partition 0
INFO: [DMAnalysis 83-4448] Creating software stub functions for partition 0
INFO: [DMAnalysis 83-4450] Generating data motion network report for partition 0
INFO: [DMAnalysis 83-4454] Rewriting caller code
Creating block diagram (BD)
Creating top.bd.tcl
/opt/Xilinx/SDx/2018.2/bin/cf2xd: 4: /opt/Xilinx/SDx/2018.2/bin/cf2xd: [[: not found
/opt/Xilinx/SDx/2018.2/bin/cf2xd: 4: /opt/Xilinx/SDx/2018.2/bin/cf2xd: [[: not found
/opt/Xilinx/SDx/2018.2/bin/cf_xsd: 4: /opt/Xilinx/SDx/2018.2/bin/cf_xsd: [[: not found
/opt/Xilinx/SDx/2018.2/bin/cf_xsd: 4: /opt/Xilinx/SDx/2018.2/bin/cf_xsd: [[: not found
Rewrite caller functions
Compile caller rewrite file /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/xfBitwise_notCoreForVivadoHLS.cpp
Compile caller rewrite file /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/xfBoxFilterCoreForVivadoHLS.cpp
Prepare hardware access API functions
Create accelerator stub functions
Compile hardware access API functions
Compile accelerator stub functions
Preliminary link application ELF
/usr/lib/x86_64-linux-gnu/libopencv_videostab.so.2.4.9: error adding symbols: File in wrong format
collect2: error: ld returned 1 exit status
ERROR: [SdsCompiler 83-5019] Exiting sds++ : Error when calling 'aarch64-linux-gnu-g++ /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/xf_arithm_hpp.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/xf_box_filter_hpp.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/xfBitwise_not.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/xfBoxFilter.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/work/XFOPENCV/PYNQ-ComputerVision/frameworks/utilities/xF/PynqLib/src/pynqlib.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/CMakeFiles/myFirstOverlay.dir/src/cv_xilinx.o /usr/lib/x86_64-linux-gnu/libopencv_videostab.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_ts.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_superres.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_stitching.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_ocl.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_gpu.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_contrib.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.9 /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/xfBitwise_notCoreForVivadoHLS.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/xfBoxFilterCoreForVivadoHLS.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/portinfo.o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/cf_stub.o -mstrict-align --sysroot=/work/SDxPlatforms/ultra/sw/sysroot -Wl,-rpath-link,/work/SDxPlatforms/ultra/sw/sysroot/lib:/work/SDxPlatforms/ultra/sw/sysroot/usr/lib:/work/SDxPlatforms/ultra/sw/sysroot/lib/aarch64-linux-gnu:/work/SDxPlatforms/ultra/sw/sysroot/usr/lib/aarch64-linux-gnu -shared -Wl,-soname,libmyFirstOverlay.so -Wl,-rpath,/work/SDxPlatforms/ultra/sw/sysroot/lib:/work/SDxPlatforms/ultra/sw/sysroot/usr/lib:/work/SDxPlatforms/ultra/sw/sysroot/lib/aarch64-linux-gnu:/work/SDxPlatforms/ultra/sw/sysroot/usr/lib/aarch64-linux-gnu -L /opt/Xilinx/SDx/2018.2/target/aarch64-linux/lib -L/work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs -lsds_lib -o /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/swstubs/libmyFirstOverlay.so'
sds++ log file saved as /work/XFOPENCV/PYNQ-ComputerVision/overlays/myFirstOverlay/build/_sds/reports/sds.log
ERROR: [SdsCompiler 83-5004] Build failed

CMakeFiles/myFirstOverlay.dir/build.make:242: recipe for target 'libmyFirstOverlay.so' failed
make[3]: *** [libmyFirstOverlay.so] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/myFirstOverlay.dir/all' failed
make[2]: *** [CMakeFiles/myFirstOverlay.dir/all] Error 2
CMakeFiles/Makefile2:79: recipe for target 'CMakeFiles/myFirstOverlay.dir/rule' failed
make[1]: *** [CMakeFiles/myFirstOverlay.dir/rule] Error 2
Makefile:162: recipe for target 'myFirstOverlay' failed
make: *** [myFirstOverlay] Error 2

from pynq-computervision.

jackl-xilinx avatar jackl-xilinx commented on July 23, 2024

Hi Amir,

It looks like the platform you have is somehow not correct which is causing the compilation errors. Can you try making sure you downloaded the correct 2018.2 ultra96 platform as described in https://github.com/Xilinx/PYNQ-ComputerVision/blob/master/overlays/README.md? The file can be found at https://www.xilinx.com/member/forms/download/xef.html?filename=ultra96_platform_sysroot_2018.2.tar.gz. The correct platform should have opencv v3.2 files such as ultra/sw/sysroot/usr/lib/aarch64-linux-gnu/libopencv_core.3.2.

jack

from pynq-computervision.

amirkiperwas avatar amirkiperwas commented on July 23, 2024

Hi Jack,
I did as instructed in the README.md file.
Just to make sure I downloaded the ultra96 platform files again from your link.

ls -lt /work/SDxPlatforms/ultra/sw/sysroot/usr/lib/aarch64-linux-gnu/libopencv_core*
lrwxrwxrwx 1 amirki amirki 23 Oct 17 23:46 /work/SDxPlatforms/ultra/sw/sysroot/usr/lib/aarch64-linux-gnu/libopencv_core.so.3.2 -> libopencv_core.so.3.2.0
lrwxrwxrwx 1 amirki amirki 21 Oct 17 23:45 /work/SDxPlatforms/ultra/sw/sysroot/usr/lib/aarch64-linux-gnu/libopencv_core.so -> libopencv_core.so.3.2
-rw-rw-r-- 1 amirki amirki 2035768 Oct 17 23:45 /work/SDxPlatforms/ultra/sw/sysroot/usr/lib/aarch64-linux-gnu/libopencv_core.so.3.2.0
-rw-rw-r-- 1 amirki amirki 4713302 Oct 17 23:45 /work/SDxPlatforms/ultra/sw/sysroot/usr/lib/aarch64-linux-gnu/libopencv_core.a

I got the same Errors as I posted before.

from pynq-computervision.

jackl-xilinx avatar jackl-xilinx commented on July 23, 2024

Hi Amir,

It looks like the cmake script is unable to find the OpenCV files inside the sysroot. The fact that you were unable to find ${SDxPlatform}/sw/sysroot and needed to define ${SDxSysroot} was an early indication something is not working right. Subsequently, it doesn't set the proper ${OpenCV_DIR} from within the toolchain_sdx2018.2.cmake script which points to the opencv inside sysroot.

What version of cmake are you running? If you have the xilinx tools installed, it should use the cmake under /opt/Xilinx/SDK/2018.2/tps/lnx64/cmake-3.3.2/bin/cmake.

Are you able to see the file /work/SDxPlatforms/ultra/sw/sysroot/usr/include/stdlib.h?

If the above two conditions are correct, then line #134 of toolchain_sdx2018.2.cmake should find the platform sysroot. If not, there's something else not working properly in your setup.

jack

from pynq-computervision.

amirkiperwas avatar amirkiperwas commented on July 23, 2024

Hi Jack,
which cmake returns:

which cmake
/opt/Xilinx/SDK/2018.2/tps/lnx64/cmake-3.3.2/bin/cmake

and

ls -lt /work/SDxPlatforms/ultra/sw/sysroot/usr/include/stdlib.h
-rw-rw-r-- 1 amirki amirki 35784 Oct 17 23:56 /work/SDxPlatforms/ultra/sw/sysroot/usr/include/stdlib.h

I went over the instructions and did everything from the beginning (making sure I have the correct commits checked out) and the make passes.

Thank you!

from pynq-computervision.

denolf avatar denolf commented on July 23, 2024

Closing issue since CMake and make now pass for Amir.

from pynq-computervision.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.