我目前正努力为UWP构建OpenCV。
我已经搜索了很多内容并找到了Microsoft's OpenCV Github Repo,其中tecnically应该发挥魔力。然而,这个回购以及我在这方面发现的其他所有东西都已经过时(Visual Studio 2015,旧的OpenCV版本等)。我需要使用OpenCV 3.3,因为它是一个跨平台项目,我不想仅仅因为过时的git repo而重新编译其他所有内容。
任何人都可以解释使用CMake从UWP官方回购中构建OpenCV的过程吗?
我的第一次尝试是简单地使用Windows Dll,但我的应用程序不是喊叫"无法加载模块"对我。然后,我尝试按照here和here所述构建OpenCV Visual Studio项目文件。但是,这对我没有做,因为它会引发以下错误:
cmake / OpenCVUtils.cmake上的CMake错误:440(如果): 如果给出论点:
"(" "OR" "OFF" ")"
指定了未知参数 呼叫堆栈(最近一次呼叫): CMakeLists.txt:317(OCV_OPTION)
它还告诉我检查CMakeOutput.log但是到处都是0错误。
如果有人可以告诉我如何摆脱这个错误或者在CMake GUI中为了为UWP构建OpenCV需要改变什么,那就太棒了!
修改
我还尝试使用平台特定的WinRT工具链编译OpenCV,如在platforms / winrt中找到的。它并没有真正改变任何东西(我甚至不确定它是否应该),我仍然得到"无法加载Dll:无法找到指定的模块"。也许GPPK在他的假设中是正确的,它更像是UWP问题,而不是OpenCV问题。无论如何,如果有人对此有所了解,我真的很想得到一些帮助!
答案 0 :(得分:5)
好的,我还没有得到答案,所以我设法自己做了(或多或少)。
以下是我的表现:
<强>先决条件强>
<强>步骤强>
cmake -G "Visual Studio 15 2017" -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERS
ION="10.0" -DCMAKE_VS_EFFECTIVE_PLATFORMS=x86 -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF C:\OpenCV
#
(OCV_OPTION(ENABLE_PYLINT) )。这应该修复它,检查,再次执行上面的命令。那就是它,您应该在安装文件夹中找到已构建的Dll。第3步可能是OpenCV中的一个错误,希望在即将推出的版本中修复。