OpenSCAD 用户手册/在 Microsoft Windows 上构建
下载 64 位 MSYS2。
- 注意:有关 32 位支持,请参阅以下 部分。
按照说明安装,包括安装时升级(pacman -Syu, -Su)。此时无需安装开发组件。
使用“开始”菜单中的“MSYS2 MinGW x64”链接启动 MSYS2 Shell 窗口。
$ curl -L https://github.com/openscad/openscad/raw/master/scripts/msys2-install-dependencies.sh | sh
使用“开始”菜单中的“MSYS2 MinGW x64”链接启动 MSYS2 Shell 窗口。
$ git clone https://github.com/openscad/openscad.git srcdir $ cd srcdir $ git submodule update --init --recursive # needed because of manifold
将“srcdir”替换为您喜欢的任何名称。
使用“开始”菜单中的“MSYS2 MinGW x64”链接启动 MSYS2 Shell 窗口。
$ cd srcdir $ mkdir builddir $ cd builddir $ cmake .. -G"MSYS Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DEXPERIMENTAL=ON -DSNAPSHOT=ON
将“builddir”替换为您喜欢的任何名称。
使用“开始”菜单中的“MSYS2 MinGW x64”链接启动 MSYS2 Shell 窗口。
$ cd srcdir/builddir $ make
您可能需要添加-jN
,其中 N 是并行运行的编译次数,大约等于系统上的处理器核心数。
使用“开始”菜单中的“MSYS2 MinGW x64”链接启动 MSYS2 Shell 窗口。
$ cd srcdir/builddir $ ./openscad
注意:当我尝试此操作时,它大部分都构建了,但在 cgalutils.cc 中失败了,而在命令行构建有效的环境中。
$ pacman -S mingw-w64-x86_64-qt-creator
$ qtcreator &
打开CMakeLists.txt从源代码树的顶部。使用默认配置。
使用 Ctrl-B 或“构建”/“构建项目”"openscad"构建。
可以通过从 MSYS2 安装页面安装 32 位版本的 MSYS2,在 32 位系统上构建 OpenSCAD。(更多信息即将发布。)
请注意,MSYS2 还提供预编译的 OpenSCAD 包。可以使用以下命令安装它
$ pacman -S mingw-w64-x86_64-openscad
以下是本页先前版本中的历史内容,可能仍然适用。
必须将“构建类型”更改为“发布”。
在某些情况下,使用 flex 和 bison 生成解析器代码时构建会失败。在这种情况下,禁用“影子构建”(请参阅“项目”选项卡/“常规设置”)可以有所帮助。
目前,QScintilla 包仅提供库的发布版本。无法将其与 OpenSCAD 的调试版本一起使用(生成的二进制文件将在 Qt 内部崩溃并出现断言错误)。
要创建 OpenSCAD 的工作调试版本,必须手动构建 QScintilla 的调试版本。
- 从 http://www.riverbankcomputing.com/software/qscintilla/download下载 QScintilla 源代码
- 解压缩存档,更改到 QScintilla 源代码树中的 Qt4Qt5 子文件夹,并编辑 qscintilla.pro 项目文件。重命名构建目标,以便 DLL 获取“d”后缀
- TARGET = qscintilla2 + TARGET = qscintilla2d
- 将发布配置选项更改为调试(也在 qscintilla.pro 中)
- CONFIG += qt warn_off release thread exceptions + CONFIG += qt warn_off debug thread exceptions
- 构建调试 DLL
$ qmake $ mingw32-make
- 将调试库复制到默认的 MSYS2 文件夹中
$ cp debug/libqscintilla2d.dll.a /mingw64/lib/ $ cp debug/qscintilla2d.dll /mingw64/bin/
OpenSCAD 需要至少 OpenGL 2.0 版本才能使用 OpenCSG 正确渲染预览。可以使用旧版本(例如,Windows 提供的默认版本 1.4),但显示可能与预期输出不同。
对于无法提供所需 OpenGL 版本的系统(例如,在 VM 上运行时),仍然可以使用 Mesa 软件渲染器获取更新的 OpenGL 驱动程序。
$ pacman -S mingw-w64-x86_64-mesa
安装 mesa 驱动程序后(默认位置为 C:\msys64\mingw64\bin,驱动程序本身为 opengl32.dll),甚至可以通过将其复制到与 OpenSCAD.exe 相同的文件夹中来激活它。
可以通过将其复制到 Windows system32 文件夹(替换旧的系统驱动程序)来为整个系统启用它。(警告:仅在您有备份并且了解如何在损坏的 Windows 安装中恢复文件的情况下才执行此操作!)