I'm trying to update the compilation instructions on the FreeCAD wiki to allow compilation on MSYS2 on Windows and I've run into a snag with a cMake command I don't understand. I'm hoping someone with more experience can help me out here. The error generated by cmake is:
Code: Select all
CMake Error at /mingw64/lib/cmake/opencascade/OpenCASCADEModelingDataTargets.cmake:99 (message):
The imported target "TKernel" references the file
"/mingw64/lib${OCCT_INSTALL_BIN_LETTER}/libTKernel.dll.a"
If I look into the cMake files in this MSYS2 install, I see the following:
Code: Select all
list(APPEND _IMPORT_CHECK_FILES_FOR_TKernel "${_IMPORT_PREFIX}/lib\${OCCT_INSTALL_BIN_LETTER}/libTKernel.dll.a" "${_IMPORT_PREFIX}/bin\${OCCT_INSTALL_BIN_LETTER}/libTKernel.dll" )
I'm particularly perplexed by backslash in
"${_IMPORT_PREFIX}/lib\${OCCT_INSTALL_BIN_LETTER}/libTKernel.dll.a" -- why is the "$" being escaped there?! It seems completely wrong to me, and indeed if I remove it this error goes away (replaced by the next in a long line of basically identical cMake errors relating to different OCCT lines). Am I missing some cMake command related to escape characters? The variable OCCT_INSTALL_BIN_LETTER itself is unset, but that's correct in this case, so it should be evaluating to "".