我希望在Windows 10 (通过x64通过VS2019)中编译OCCT7.5以便与FreeCAD一起使用,以支持导出glTF文件,这需要RapidJSON支持(在OCCT中)。我从他们的git回复中检出了OCCT7.5.3和RapidJSON 1.1.0,然后抓取了FreeCAD libpack 12.5.2 (用于OCCT7.5)。我从FreeCAD的构建文档开始,然后试图跟随OCCT构建文档。
在CMake中配置OCCT项目时,我已经能够找到FreeCAD libpack和RapidJSON中某些变量(例如有关FREETYPE的变量)的正确值,但仍然会在配置中出现一些错误,似乎不管我尝试了什么值:
Could not find headers of used third-party products:
3RDPARTY_TCL_INCLUDE_DIR 3RDPARTY_TK_INCLUDE_DIR
...
Could not find DLLs of used third-party products: 3RDPARTY_TCL_DLL_DIR
3RDPARTY_TK_DLL_DIR我尝试使用*.lib、*.h和*.dll文件在FreeCAD Libpack (及其相应的目录)中找到*_FreeCAD/INCLUDE/DLL变量,但什么也没有找到。我明白了
Info: TCL is used by OCCT
Could NOT find Tclsh (missing: TCL_TCLSH)即使tclsh86t.exe存在于libpack/bin目录中。
应该将3RDPARTY_TCL_* & 3RDPARTY_TK_* CMake变量设置为什么,以使用FreeCAD libpack?
发布于 2021-09-02 15:54:03
问题是我对CMake和Cmake不熟悉: gui在指定路径变量时为FILEPATH打开了一个对话框。我天真地想,“我不认识CMake,所以我会相信这个人”。完全错了。
我手动编辑了3RDPARTY_*变量条目,以指向FreeCAD libpack中的正确目录(或在需要时指向libs ),使用变量名和每个变量的说明/提示来确定变量的值。以下是我的参赛作品,供参考:

我确实需要检查"Advanced",以编辑FREETYPE_LIBRARY_DEBUG & FREETYPE_LIBRARY_RELEASE变量(CMake将它们设置为分离jdk目录中的库,可能是因为它在某个时候被添加到系统路径中)。
https://stackoverflow.com/questions/69020410
复制相似问题