Hi,
Even though I've hit this issue with OpenCV 4.0.1, I think that the problem is still there with current OpenCV, as opencv_img_hash is excluded from opencv_world because of set(OPENCV_MODULE_IS_PART_OF_WORLD OFF) in its CMakeLists.txt.
Trying to build App Store dynamic framework thus failed as both opencv_world and opencv_img_hash are trying to produce opencv2.framework (from my limited understanding):
% python3 build_framework.py --contrib <opencv_contrib> --dynamic
ends up with:
error: Multiple commands produce '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/opencv2'
note: Target 'opencv_img_hash' (project 'OpenCV') has link command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/opencv2'
note: Target 'opencv_world' (project 'OpenCV') has link command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/opencv2'
error: Multiple commands produce '<Linked Binary <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/opencv2>'
note: Target 'opencv_img_hash' (project 'OpenCV') has link command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/opencv2'
note: Target 'opencv_world' (project 'OpenCV') has link command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/opencv2'
error: Multiple commands produce '<MkDir <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework>'
note: Target 'opencv_img_hash' (project 'OpenCV') has create directory command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework'
note: Target 'opencv_world' (project 'OpenCV') has create directory command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework'
error: Multiple commands produce '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/Info.plist'
note: Target 'opencv_img_hash' (project 'OpenCV') has process command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/Info.plist'
note: Target 'opencv_world' (project 'OpenCV') has process command with output '<outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework/Info.plist'
error: Multiple commands produce '<RegisterExecutionPolicyException <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework>'
note: Target 'opencv_img_hash' (project 'OpenCV'): RegisterExecutionPolicyException <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework
note: Target 'opencv_world' (project 'OpenCV'): RegisterExecutionPolicyException <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework
error: Multiple commands produce '<Touch <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework>'
note: Target 'opencv_img_hash' (project 'OpenCV'): Touch <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework
note: Target 'opencv_world' (project 'OpenCV'): Touch <outdir>/build/build-arm64-iphoneos/lib/Release/opencv2.framework
Excluding opencv_img_hash module is a workaround. Anonymized OpenCV's build log attached, if needed.
opencv_build.log
Hi,
Even though I've hit this issue with OpenCV 4.0.1, I think that the problem is still there with current OpenCV, as opencv_img_hash is excluded from opencv_world because of
set(OPENCV_MODULE_IS_PART_OF_WORLD OFF)in its CMakeLists.txt.Trying to build App Store dynamic framework thus failed as both opencv_world and opencv_img_hash are trying to produce opencv2.framework (from my limited understanding):
% python3 build_framework.py --contrib <opencv_contrib> --dynamic
ends up with:
Excluding opencv_img_hash module is a workaround. Anonymized OpenCV's build log attached, if needed.
opencv_build.log