首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >流行的CMake构建系统与OpenCASCADE工具的区别

流行的CMake构建系统与OpenCASCADE工具的区别
EN

Stack Overflow用户
提问于 2021-03-23 11:22:27
回答 1查看 88关注 0票数 0

在探索OpenCASCADE的平台设置时,我了解了CMake构建系统不需要与OpenCASCADE一起使用的WOK命令,但是genproj工具的另一个选项(除了DLL之外,我还没有找到任何exe )。在内置编译器中与MSVC+一起使用,这样我们就不需要安装gcc了

这两个人之间有什么区别,哪一个更好,哪个更容易?还建议我如何在windows上下载、安装和安装genproj。

EN

回答 1

Stack Overflow用户

发布于 2021-03-23 14:56:09

OCCT项目提供了以下建设系统:

  • CMake.这是自OCCT 7.0.0以来的主要建筑系统。它允许为几乎所有支持的目标platform.
  • WOK.构建OCCT。这是OCCT在7.0.0发布前使用的内部构建系统。该工具处理CDL (CAS.CADE定义语言)文件中定义的类(WOK从CDL生成C++头文件),并支持在分布式环境中进行构建(例如,本地WOK安装程序只生成修改的源文件,并从本地网络重用未经修改的二进制/对象文件)。自occt7.5.0以来,WOK支持已经停止,不太可能建立最新的OCCT源(尽管项目结构仍然与WOK).
  • genproj.兼容)。这是一个Tcl脚本,允许生成使用Visual (2010+)、Code::Block、XCode和Qt构建OCCT的项目。这个脚本最初是从WOK包中提取出来的(在这个包中,它是作为命令wgenproj在它的shell中实现的),现在独立于wgenproj维护。实验adm/qmake解决方案可以直接从QtCreator中打开,无需CMake插件(项目文件将由qmake递归生成)。尽管头文件的生成(填充inc文件夹)仍然应该使用genproj (发现qmake脚本功能对这个工作人员来说太有限)。

genproj不需要任何DLL或EXE文件--它与OCCT本身一起提供,并且需要Tcl解释器。在Windows上,可以使用genconf.batgenproj.bat批处理脚本在OCCT源代码文件夹的根目录下执行。在第一次启动时,它将要求为tclsh.exe设置一条路径。

虽然 CMake 是OCCT项目的主要构建工具,但genproj仍然由(一些)开发人员维护和使用--主要是由于个人习惯和对CMake的憎恨。在某些情况下,genproj与CMake的区别可以被认为是优势:

生成的项目文件可以移动到另一个位置/计算机,而不需要重新生成them.

  • Simplified第三方依赖关系搜索工具genconf,使用基于Tcl/Tk.

  • Batch-script环境/配置文件的GUI (env.batcustom.bat),)。虽然OCCT中的files.

  • Generated脚本模拟类似的configurations.

  • Running,但Visual解决方案中包含Debug+Release和32位/64位的CMake绘制、Harness和回归测试,可以直接从Visual启动(无需构建任何INSTALL目标)。

genproj的局限性

  • 无CMake配置文件。其他基于CMake的项目将无法重用配置文件来简化项目文件的第三方setup.
  • Regeneration,因此不支持explicitly.
  • Out-of-source构建(但是,每个配置都被放入专用的sub-folder).
  • No INSTALL目标中。
  • No PCH (预编译器头文件)生成。

)。

应该注意的是,为了使编译器/链接器标志在CMake和genproj之间保持一致,已经做了几次尝试,但实际上它们可能不同。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66762155

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档