I've been compiling and running HVX examples successfully on an 820 chip. I wanted to clone an example for a new program using:
python ./tools/scripts/clone_project.py ./examples/common/downscaleBy2 conv3x3i16fract
The clone script seems to have run some sort of clean operation in the process. Now I can no longer compile any of the examples anymore, including downscaleBy2:
~/Qualcomm/Hexagon_SDK/3.0/examples/common/downscaleBy2 $ make V=hexagon_ReleaseG_dynamic_toolv72_v60
/home/citeam/Qualcomm/HEXAGON_Tools/7.2.12/Tools/bin/hexagon-clang -mv60 -c -v -G0 -g -O2 -Wall -Werror -Wno-cast-align -Wpointer-arith -Wno-missing-braces -Wno-strict-aliasing -fno-exceptions -fno-strict-aliasing -fno-zero-initialized-in-bss -fdata-sections -mllvm -disable-hsdr -fpic -D__V_DYNAMIC__ -Wstrict-prototypes -Wnested-externs -mhvx-double -D__FILENAME__=\"downscaleBy2_imp.c\" -I../../../libs/common/qurt//ADSPv60MP/include -I../../../libs/fastcv/dspCV/hexagon_ReleaseG_dynamic_toolv72_v60/ship -I../../../test/common/test_util/hexagon_ReleaseG_dynamic_toolv72_v60/ship -I../../../incs -I../../../libs/common/remote/ship/hexagon_ReleaseG_dynamic_toolv72_v60 -I../../../incs/stddef -I../../../libs/common/rpcmem/hexagon_ReleaseG_dynamic_toolv72_v60/ship -Ihexagon_ReleaseG_dynamic_toolv72_v60 -o hexagon_ReleaseG_dynamic_toolv72_v60/downscaleBy2_imp.o src/downscaleBy2_imp.c
Target: hexagon
Thread model: posix
QuIC LLVM Hexagon Clang version 7.2.12
"/home/citeam/Qualcomm/HEXAGON_Tools/7.2.12/Tools/bin/clang-3.5" -cc1 -triple hexagon -S -disable-free -main-file-name downscaleBy2_imp.c -mrelocation-model pic -pic-level 1 -mrelocation-model pic -pic-level 1 -mdisable-fp-elim -mno-zero-initialized-in-bss -relaxed-aliasing -fmath-errno -ffp-contract=fast -no-integrated-as -mconstructor-aliases -target-cpu hexagonv60 -target-feature +hvx -target-cpu hexagonv60 -fno-signed-char -fhexagon-dinkumware-compat -fshort-enums -Wreturn-type -fno-use-cxa-atexit -mllvm -hexagon-small-data-threshold=0 -D__HVX__ -mllvm -enable-hexagon-hvx-double=1 -D__HVX__ -D__HVXDBL__ -mllvm -machine-sink-outside-loop -mllvm -use-dwarf3-form-flags=true -mllvm -enable-tcm-inline-heuristic=true -v -g -fdata-sections -coverage-file /tmp/downscaleBy2_imp-f8ecea.s -resource-dir /home/citeam/Qualcomm/HEXAGON_Tools/7.2.12/Tools/bin/../lib/clang/3.5.0 -D __V_DYNAMIC__ -D "__FILENAME__=\"downscaleBy2_imp.c\"" -I ../../../libs/common/qurt//ADSPv60MP/include -I ../../../libs/fastcv/dspCV/hexagon_ReleaseG_dynamic_toolv72_v60/ship -I ../../../test/common/test_util/hexagon_ReleaseG_dynamic_toolv72_v60/ship -I ../../../incs -I ../../../libs/common/remote/ship/hexagon_ReleaseG_dynamic_toolv72_v60 -I ../../../incs/stddef -I ../../../libs/common/rpcmem/hexagon_ReleaseG_dynamic_toolv72_v60/ship -I hexagon_ReleaseG_dynamic_toolv72_v60 -internal-externc-isystem /home/citeam/Qualcomm/HEXAGON_Tools/7.2.12/Tools/bin/../target/hexagon/include -O2 -Wall -Werror -Wno-cast-align -Wpointer-arith -Wno-missing-braces -Wno-strict-aliasing -Wstrict-prototypes -Wnested-externs -fno-dwarf-directory-asm -fdebug-compilation-dir /home/citeam/Qualcomm/Hexagon_SDK/3.0/examples/common/downscaleBy2 -ferror-limit 19 -fmessage-length 184 -mstackrealign -fshort-enums -fno-use-cxa-atexit -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -mllvm -num-clusters=4 -mllvm -FJcycles=850 -mllvm -autopar-check-hvx-ops=true -mllvm -disable-hsdr -o /tmp/downscaleBy2_imp-f8ecea.s -x c src/downscaleBy2_imp.c
clang -cc1 version 3.5.0 based upon LLVM 3.5.0 default target hexagon-unknown--elf
ignoring nonexistent directory "../../../libs/fastcv/dspCV/hexagon_ReleaseG_dynamic_toolv72_v60/ship"
ignoring nonexistent directory "../../../test/common/test_util/hexagon_ReleaseG_dynamic_toolv72_v60/ship"
ignoring nonexistent directory "../../../libs/common/rpcmem/hexagon_ReleaseG_dynamic_toolv72_v60/ship"
#include "..." search starts here:
#include <...> search starts here:
../../../libs/common/qurt//ADSPv60MP/include
../../../incs
../../../libs/common/remote/ship/hexagon_ReleaseG_dynamic_toolv72_v60
../../../incs/stddef
hexagon_ReleaseG_dynamic_toolv72_v60
/home/citeam/Qualcomm/HEXAGON_Tools/7.2.12/Tools/bin/../target/hexagon/include
/home/citeam/Qualcomm/HEXAGON_Tools/7.2.12/Tools/bin/../lib/clang/3.5.0/include
End of search list.
src/downscaleBy2_imp.c:32:10: fatal error: 'dspCV_worker.h' file not found
#include "dspCV_worker.h"
^
1 error generated.
../../../build/make.d/rules.min:589: recipe for target 'hexagon_ReleaseG_dynamic_toolv72_v60/downscaleBy2_imp.o' failed
make: *** [hexagon_ReleaseG_dynamic_toolv72_v60/downscaleBy2_imp.o] Error 1
citeam@lightvm:~/Qualcomm/Hexagon_SDK/3.0/examples/common/downscaleBy2 $
It looks like dspCV_worker.h is still there:
~/Qualcomm/Hexagon_SDK/3.0 $ find -name dspCV_worker.h
./libs/fastcv/dspCV/inc/dspCV_worker.h
How do I fix the damage done by clone_project.py?
Here's the cloning output:
citeam@lightvm:~/Qualcomm/Hexagon_SDK/3.0 $ python ./scripts/clone_project.py ./examples/common/downscaleBy2 conv3x3i16fract
Cloning examples/common/downscaleBy2 to examples/common/conv3x3i16fract...
make: Entering directory '/home/citeam/Qualcomm/Hexagon_SDK/3.0/examples/common/downscaleBy2'
cleaning ../../../tools/qaic
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
cleaning ../../../test/common/test_util
cleaning ../../../libs/common/atomic
cleaning ../../../libs/common/rpcmem
cleaning .
cleaning ../../../libs/fastcv/dspCV
../../../build/make.d.ext/android/defines_android_Debug.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Debug.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../test/common/test_util
../../../build/make.d.ext/android/defines_android_Debug.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Debug.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/common/atomic
../../../build/make.d.ext/android/defines_android_Debug.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Debug.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/common/rpcmem
../../../build/make.d.ext/android/defines_android_Debug.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Debug.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning .
../../../build/make.d.ext/android/defines_android_Debug.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Debug.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/fastcv/dspCV
../../../build/make.d.ext/android/defines_android_Release.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Release.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../test/common/test_util
../../../build/make.d.ext/android/defines_android_Release.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Release.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/common/atomic
../../../build/make.d.ext/android/defines_android_Release.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Release.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/common/rpcmem
../../../build/make.d.ext/android/defines_android_Release.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Release.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning .
../../../build/make.d.ext/android/defines_android_Release.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_Release.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/fastcv/dspCV
../../../build/make.d.ext/android/defines_android_ReleaseG.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_ReleaseG.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../test/common/test_util
../../../build/make.d.ext/android/defines_android_ReleaseG.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_ReleaseG.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/common/atomic
../../../build/make.d.ext/android/defines_android_ReleaseG.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_ReleaseG.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning ../../../libs/common/rpcmem
../../../build/make.d.ext/android/defines_android_ReleaseG.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_ReleaseG.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
cleaning .
../../../build/make.d.ext/android/defines_android_ReleaseG.min:14: "Using default tools location: ANDROID_TOOLS_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64"
../../../build/make.d.ext/android/defines_android_ReleaseG.min:22: "Using default platform location: ANDROID_PLATFORM_DIR=/home/citeam/Qualcomm/Hexagon_SDK/3.0/tools/android-ndk-r10d/platforms/android-21/arch-arm"
make: Leaving directory '/home/citeam/Qualcomm/Hexagon_SDK/3.0/examples/common/downscaleBy2'
Cloning done
clone_project.py just cleans the built project, It just removes the build output binaries.
you should use
make tree V=hexagon_ReleaseG_dynamic_toolv72_v60 instead of
make V=hexagon_ReleaseG_dynamic_toolv72_v60
just clean your project and rebuild
make tree_clean V=hexagon_ReleaseG_dynamic_toolv72_v60
make tree V=hexagon_ReleaseG_dynamic_toolv72_v60
Thank you so much!