VS 2013 Compilation - meta module commit (Bug #4202)
Description
this commit introduced new errors.
I cannot compile the master branch anymore with this commit in https://github.com/Itseez/opencv/commit/d509ecd19acce1efcbd8ffee49e3b977840a812b
VS 2013, Win x64 8.1 i think any module is affected by this
I think this is VS 2012+ specific.
i keep getting following errors:
Error 1 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/imgcodecs/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\vector 60 1 opencv_imgcodecs_object Error 2 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/ml/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\vector 60 1 opencv_ml_object Error 3 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/imgproc/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xmemory0 592 1 opencv_imgproc_object Error 4 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/objdetect/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\vector 60 1 opencv_objdetect_object Error 5 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/video/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xmemory0 592 1 opencv_video_object Error 6 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/highgui/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\vector 60 1 opencv_highgui_object Error 7 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/videoio/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\vector 60 1 opencv_videoio_object Error 13 error C2857: '#include' statement specified with the /YcD:/Tools/face/lib/opencv/modules/photo/src/precomp.hpp command-line option was not found in the source file C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xmemory0 592 1 opencv_photo_object
Associated revisions
Merge pull request #4202 from PhilLab:patch-5
History
Updated by Maksim Shabunin about 10 years ago
- cmake parameters and cmake output (attach to bug)
- What command do you use to run actual build (for ex.
cmake --build . --config release -- /maxcpucount:4
)? - Have you tried to make clean build?
Updated by Philip L about 10 years ago
tested with several cmake configurations, latest try is a clean config so no additional parameters for cmake
since i cannot attach any files after creating a issue i have to do the ouput here:
https://gist.github.com/Dikay900/2aaaa49d35b2e5c01974
i use vs2013 as ide with the integrated building command both release / debug are failing with errors above. maxcpucount is 8 for my system but i dont think this does change anything if setted to one.
in latest try i used a clean folder with default cmake options so yes it was clean.
Updated by Maksim Shabunin about 10 years ago
Analysis:
To support building compound modules, special object library targets were added for each non-compound module. This allowed to use specific compilation parameters for each module included into compound one and to link several modules together easily. These object library targets has been excluded from the all-build, but not from Visual Studio solution-build.
To fix it, cmake property EXCLUDE_FROM_DEFAULT_BUILD
should be set to true
for each object library target. Pull request with this change (https://github.com/Itseez/opencv/pull/3716) has been submitted.
Other part of the problem is broken precompiled header when building object library targets. This issue affects only compound modules (opencv_contrib_world for now) and is still being analysed.
- Assignee set to Maksim Shabunin
- Category set to infrastructure
- Target version set to 3.0
- Pull request set to https://github.com/Itseez/opencv/pull/3716
- Difficulty set to Easy
Updated by Philip L about 10 years ago
Thanks this resolved the problems.
Updated by Philip L about 10 years ago
- Status changed from New to Done
- % Done changed from 0 to 100