FC2カウンター FPGAの部屋 2017年11月01日

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ZYBOでのxfOpenCVライブラリの使用1

FPGAボードを持っていないreVISION をやっていても面白くないので、ZYBOのxfOpenCV をやってみることにした。

参考にするのは、”ザイリンクス OpenCV ユーザーガイド UG1233 (v2017.2) 2017 年 9 月 22 日”の 10 ページの”カスタム プラットフォームでの xfOpenCV ライブラリの使用”だ。

ユーザーズ・ガイドの通りにやってみる。

SDx を立ち上げて、WorkSpace を設定した。

SDx のFile メニューからNew −> Xilinx SDx Project を選択した。

New Project ダイアログが表示された。Project name に accumulate_xfOCV と入力した。
xfOpenCV_1_171101.png

Choose Hardware Platform で、 zybo を選択した。
xfOpenCV_2_171101.png

Choose Software Platform and Target CPU はそのままとした。
xfOpenCV_3_171101.png

Templates では、Empty Application を選択した。Finish ボタンをクリックした。
xfOpenCV_4_171101.png

accumulate_xfOCV プロジェクトが開かれました。
Active build configuration をRelease に変更した。
xfOpenCV_5_171101.png

Project Explorer で accumulate_xfOCV を右クリックして、右クリックメニューから C/C++ Build Settings を選択する。
Properties for accumulate_xfOCV ダイアログが開いた。
SDS++ Compiler のDirectories をクリックした。
xfOpenCV_6_171101.png

xfopencv/include を include Paths に入れたが<OpenCV_location>\include フォルダーがどこを指すのかがわからない?
How to link OpenCV library with SDSoC”によると /opt/Xilinx/SDK/2016.4/data/embeddedsw/ThirdParty/ ということだったので、”/opt/Xilinx/SDK/2017.2/data/embeddedsw/ThirdParty/opencv/aarch32/include”を追加した。

Apply をクリックした。

SDS++ Linker のLibraries をクリックした。
Libraries(-l) にライブラリを追加した。
Libraries search path (-L) に”/opt/Xilinx/SDK/2017.2/data/embeddedsw/ThirdParty/opencv/aarch32/lib”を追加した。
xfOpenCV_7_171101.png

Apply をクリックして、OK ボタンをクリックしてダイアロを閉じた。

accumulate_xfOCV プロジェクトを展開して、src フォルダを右クリックし、右クリックメニューから Import を選択する。
File System を選択した。
xfOpenCV_8_171101.png

Browse... ボタンをクリックした。
xfOpenCV_9_171101.png

xfopencv/accumulate を選択して、OKボタンをクリックした。
xfOpenCV_10_171101.png

.h と .cpp フォイルにチェックを付けて、Finish ボタンをクリックした。
xfOpenCV_11_171101.png

これでプロジェクトが完成した。トンカチ・アイコンをクリックしてビルド開始。
xfOpenCV_12_171101.png

エラー発生。
xfOpenCV_13_171101.png

エラー内容を示す。

/opt/Xilinx/SDx/2017.2/SDK/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: -llzma が見つかりません
/opt/Xilinx/SDx/2017.2/SDK/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: -ltiff が見つかりません
/opt/Xilinx/SDx/2017.2/SDK/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: -lpng16 が見つかりません
/opt/Xilinx/SDx/2017.2/SDK/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: -lz が見つかりません
/opt/Xilinx/SDx/2017.2/SDK/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: -ljpeg が見つかりません
/opt/Xilinx/SDx/2017.2/SDK/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: -lwebp が見つかりません


ライブラリが無いと言われている。lzma などのライブラリがどこにあるか探ってみたところ、”/home/masaaki/zcu102_rv_ss/sw/sysroot/usr/lib”にあるようだった。

Project Explorer で accumulate_xfOCV を右クリックして、右クリックメニューから C/C++ Build Settings を選択する。
Properties for accumulate_xfOCV ダイアログが開いた。
SDS++ Linker のLibraries をクリックした。
Libraries search path (-L) に”/home/masaaki/zcu102_rv_ss/sw/sysroot/usr/lib”を追加した。
xfOpenCV_14_171102.png

これでトンカチ・アイコンをクリックして、もう一度ビルドした。
やはりエラー発生。
xfOpenCV_15_171102.png

エラー内容を示す。

ERROR: [SdsCompiler 83-5019] Exiting sds++ : Error when calling 'arm-linux-gnueabihf-g++ /home/masaaki/workspace/accumulate_xfOCV/Release/src/xf_accumulate_image_accel.o /home/masaaki/workspace/accumulate_xfOCV/Release/src/xf_accumulate_image_tb.o /home/masaaki/workspace/accumulate_xfOCV/Release/_sds/swstubs/portinfo.o -L/opt/Xilinx/SDK/2017.2/data/embeddedsw/ThirdParty/opencv/aarch32/lib -L/home/masaaki/zcu102_rv_ss/sw/sysroot/usr/lib -lopencv_core -lopencv_imgproc -lopencv_imgcodecs -lopencv_features2d -lopencv_calib3d -lopencv_flann -llzma -ltiff -lpng16 -lz -ljpeg -ldl -lrt -lwebp -L /opt/Xilinx/SDx/2017.2/target/aarch32-linux/lib -L/home/masaaki/workspace/accumulate_xfOCV/Release/_sds/swstubs -Wl,--start-group -Wl,--end-group -Wl,--start-group -lpthread -lsds_lib -lxlnk_stub -Wl,--end-group -o /home/masaaki/workspace/accumulate_xfOCV/Release/_sds/swstubs/accumulate_xfOCV.elf'

  1. 2017年11月01日 05:34 |
  2. reVISION, xfOpenCV
  3. | トラックバック:0
  4. | コメント:0