ソフトウェアからハードウェアの呼び出しは分かったのでハードウェアがどこにあるか探してみる。
そういえば、SDカードはhttps://www.xilinx.com/bin/public/openDownload?filename=xilinx-zcu104-dpu-v2020.2-v1.3.0.img.gz
からダウンロードして書き込んだだけでした。
じゃぁ、BitStreamは事前に用意されていたってことですね。
そして、ハードウェアの前にlibvitis_ai_library-facedetect
を通過して実際のハードウェアにたどり着くんですよね?
まだ、ソフトウェア層が残っていました。
このライブラリを探してみます。
おそらく、./Vitis-AI/tools/Vitis-AI-Library/facedetect
でよいのでしょう。
$ find ./Vitis-AI/tools/Vitis-AI-Library/facedetect
./Vitis-AI/tools/Vitis-AI-Library/facedetect
./Vitis-AI/tools/Vitis-AI-Library/facedetect/.gitignore
./Vitis-AI/tools/Vitis-AI-Library/facedetect/test
./Vitis-AI/tools/Vitis-AI-Library/facedetect/test/test_facedetect_batch.cpp
./Vitis-AI/tools/Vitis-AI-Library/facedetect/test/test_facedetect.cpp
./Vitis-AI/tools/Vitis-AI-Library/facedetect/test/test_accuracy_facedetect.cpp
./Vitis-AI/tools/Vitis-AI-Library/facedetect/include
./Vitis-AI/tools/Vitis-AI-Library/facedetect/include/vitis
./Vitis-AI/tools/Vitis-AI-Library/facedetect/include/vitis/ai
./Vitis-AI/tools/Vitis-AI-Library/facedetect/include/vitis/ai/facedetect.hpp
./Vitis-AI/tools/Vitis-AI-Library/facedetect/src
./Vitis-AI/tools/Vitis-AI-Library/facedetect/src/facedetect.cpp
./Vitis-AI/tools/Vitis-AI-Library/facedetect/src/detect_imp.cpp
./Vitis-AI/tools/Vitis-AI-Library/facedetect/src/detect_imp.hpp
./Vitis-AI/tools/Vitis-AI-Library/facedetect/CMakeLists.txt
たぶん、このディレクトリをcmake
してmake
すればライブラリができるのだろう。
試しにビルドしてみよう。
$ mkdir build
$ cd build/
$ cmake ../
CMake Warning (dev) in CMakeLists.txt:
No project() command is present. The top-level CMakeLists.txt file must
contain a literal, direct call to the project() command. Add a line of
code such as
project(ProjectName)
near the top of the file, but after cmake_minimum_required().
CMake is pretending there is a "project(Project)" command on the first
line.
This warning is for project developers. Use -Wno-dev to suppress it.
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:18 (include):
include could not find load file:
XilinxVersion
CMake Error at CMakeLists.txt:51 (install):
install EXPORT given no DESTINATION!
-- Configuring incomplete, errors occurred!
See also "/home/hidemi/workspace/VitisAI/VitisAI_2020.2/Vitis-AI/tools/Vitis-AI-Library/facedetect/build/CMakeFiles/CMakeOutput.log".
エラーが出た。
あぁ、Vitisの環境セットアップをしてなかったのでセットアップしてからcmake
してみる。
$ source /opt/Xilinx/Vitis/2020.2/settings64.sh
$ cmake ../
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:16 (cmake_minimum_required):
CMake 3.5 or higher is required. You are running version 3.3.2
-- Configuring incomplete, errors occurred!
See also "/home/hidemi/workspace/VitisAI/VitisAI_2020.2/Vitis-AI/tools/Vitis-AI-Library/facedetect/build/CMakeFiles/CMakeOutput.log".
cmake
のバージョンエラーになった。
今、見えているcmake
のバージョンは?
3.3.2だよね。
どこにあるんだろう?
$ which cmake
/opt/Xilinx/Vitis/2020.2/tps/lnx64/cmake-3.3.2/bin/cmake
$ cmake --version
cmake version 3.3.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
Vitisツール配下のcmake
を使っているではないか!
それでバージョンエラーとはこれ如何に?
なんか当たるところを違ってそうなので明日にしよう。