文章目录
前言
在Windows系统上构建 OpenModelica 编译器:
从github上下载OpenModelica项目的源代码https://github.com/OpenModelica/OpenModelica,使用cmake和make构建成可执行文件
一、MSYS环境
1.1 一般注意事项
- 安装 Git for Windows https://git-scm.com/downloads
- 在 Git Bash 终端中运行:
git config --global core.eol lf
git config --global core.autocrlf input
1.2 安装OMDev
- 将 OMDev 克隆到路径中不包含任何空格的目录中。 我使用了
D:\OMDev\
在 Git Bash 中运行以下命令:
cd /d/
git clone --depth 1 -b master --single-branch https://gitlab.liu.se/OpenModelica/OMDevUCRT.git OMDev
- 按照文件 %OMDEV%\INSTALL.md 中的说明进行操作。
(1)定义一个名为“OMDEV”的 Windows 环境变量,它指向C:\path\to\your\OMDev
,重新启动或注销/登录以使其可用。
(2)首次启动,运行:%OMDEV%/SETUP_OMDEV.bat
生成密码和组。%OMDEV%/SETUP_OMDEV_Qt5.bat
用于修补 Qt5 文件。- 当您第一次启动“%OMDEV/tools/msys/ucrt64.exe”时,您的主目录将被初始化,初始设置完成。 MSYS2 现在可以使用了。
1.3 安装附加程序
安装以下程序:
- Git(应该已经安装)
- Java SE Development Kit (for javac)
- TortoiseSVN, SVN tool for Windows
- CMake (>= v3.21)
1.4 配置环境变量
导出工具的路径:git、svn、java/javac 和 cmake。 定义指向 OMDev 目录以及 MSYS2 根目录的环境变量。
注意:使用类似Linux 的路径。 例如 C:\Program Files\Git\bin
变为 /c/Program Files/Git/bin
export PATH=$PATH:/c/path/to/git/bin:/c/path/to/svn/tools/bin:/c/path/to/jdk/bin:/c/path/to/cmake/bin
export OPENMODELICAHOME="/c/path/to/OpenModelica/build"
export OPENMODELICALIBRARY="/c/Users/<user name>/AppData/Roaming/.openmodelica/libraries"
export OMDEV="/c/OMDev"
注:第二行应该是指定你要构建的OpenModelica的文件路径
您可以将其添加到您的 .bashrc 文件(通常位于 %OMDEV%\tools\msys\home<USERNAME>.bashrc 中),以始终将它们放在您的 PATH 中。
- 附加说明:
MSYS 不使用 Windows PATH 变量。 如果您想使用它,请定义一个名为 MSYS2_PATH_TYPE=inherit 的 Windows 环境变量。 但要非常小心,Windows 路径中没有任何 MINGW 目录,例如 来自 Git。
MSYS 不使用 Windows TEMP 目录,而是使用 C:\OMDev\tools\msys\tmp 您可以在 C:\OMDev\tools\msys\etc\profile 中更改此目录,但它可能会产生意想不到的副作用。
如果您想从 Windows 命令行使用 msys shell,请确保设置环境变量 MSYSTEM=UCRT64 或调用 C:\OMDev\tools\msys\ucrt64.exe。
二、编译OpenModelica
2.1.下载 OpenModelica项目源代码
打开代码要存放的文件夹,点击右键
单击打开git bash
运行下列代码
git clone --recurse-submodules https://github.com/OpenModelica/OpenModelica.git
2.2.MSYS and CMake
启动 MSYS2 shell C:\OMDev\tools\msys\ucrt64.exe
(UCRT64) 或 C:\OMDev\tools\msys\mingw64.exe
(MINGW64) 并运行下列:
cd /path/to/OpenModelica
cmake -S . -B build_cmake -Wno-dev -G "MSYS Makefiles"
cd build_cmake
# Replace <Nr. of cores> with the number of your cores
make -j<Nr. of cores> install -Oline
你需要将 <Nr. of cores> 替换为你系统实际可用的 CPU 核心数量
2.3 MSYS and Make
启动 MSYS2 shell C:\OMDev\tools\msys\ucrt64.exe
(UCRT64) 或 C:\OMDev\tools\msys\mingw64.exe
(MINGW64) 并运行下列:
cd /path/to/OpenModelica
# build omc using number of cores, replace by your number of cores
make -f Makefile.omdev.mingw -j<Nr. of cores>
# if you want to build only omedit then run:
make -f Makefile.omdev.mingw -j<Nr. of cores> omedit
# if you want to build all qtclients run
make -f Makefile.omdev.mingw -j<Nr. of cores> qtclients
你需要将 <Nr. of cores> 替换为你系统实际可用的 CPU 核心数量
三、运行编译好的OMEdit
运行编译好的OMEdit.exe文件C:\path\to\OpenModelica\build_cmake\install_cmake\bin
最后,如果 CMake 未安装默认库,出现了下面的红字错误,您始终可以自行安装它们File->Manage Libraries->Install Library。从列表中选择Modelica并按OK。Modelica重新启动 OMEdit 或从加载已安装的库File->System Libraries->Modelica
转到File->Manage Libraries->Install Library,安装默认库:
从列表中选择Modelica并按OK: