Win10 64位系统下VS2015编译Geant4 10.2 + QT 5.6的过程小结(转载自天涯沦落人的新浪博客)
2018-01-05 21:01
459 查看
写在前头:首先感谢天涯沦落人大神,指点很有用,不过不知道为啥你发的新浪博客图片老是挂掉,为了方便,我趁着图片正常的时候转载到了自己的博客里以备查询,如果介意可随时留言让我删掉
基本软件:CMake 3.4.1、GEANT4 10.2、QT 5.6 beta(此版本开始提供VS2015的二进制预编译包)、VS 2015
源码 /source/interfaces/basic/src/G4UIQt.cc 的196行(masterG4coutDestination = this;)注释掉。
QT安装32位版本:qt-opensource-windows-x86-msvc2015-5.6.0-beta.exe
启动CMake-GUI,编译器选择VS2015 32位版本。参考下图设置:(关键是勾选QT后,需要Add Entry,添加一个CMAKE_PREFIX_PATH项,类型PATH,值为QT 5.6安装目录,目录指定到msvc2015这一层)
CMake的选项设置
configure和generate都很成功。
然后转到build目录下,运行Geant4.sln,开始漫长的编译工作了~
编译成功后,要运行例子的话,需要先更改一些代码:
上面Geant4的build目录下的Geant4Config.cmake文件修改如下:
注释掉 find_package(Qt4 REQUIRED) 这一行,因为我们用的Qt5,不需要Qt4。
接下来就编译例子B2a,如图:
然后编译,设置各种DATA相关的环境变量,成功后运行可以看到界面:
例子B2a的QT5前端界面示例
64位编译时,QT也要安装相应的64位版本(文件名带_64的那个二进制包,qt-opensource-windows-x86-msvc2015_64-5.6.0-beta.exe)。
启动CMake-GUI,编译器选择VS2015 64位版本。参考下图设置:
CMake
64位编译设置
64位编译时会出现大量MSB6006错误,方法Google一下后发现需要修改 C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets 文件,记得先备份。修改内容为去掉<CustomBuild 到 </CustomBuild>的这部分代码。
其它部分参考32位编译方法。
基本软件:CMake 3.4.1、GEANT4 10.2、QT 5.6 beta(此版本开始提供VS2015的二进制预编译包)、VS 2015
预备工作
GEANT4 Release 10.2这个版本在Win下有个小bug,需要如下修改,否则编译出来的例子会报G4interfaces.dll错误:
源码 /source/interfaces/basic/src/G4UIQt.cc 的196行(masterG4coutDestination = this;)注释掉。
(1)32位编译方法
QT安装32位版本:qt-opensource-windows-x86-msvc2015-5.6.0-beta.exe启动CMake-GUI,编译器选择VS2015 32位版本。参考下图设置:(关键是勾选QT后,需要Add Entry,添加一个CMAKE_PREFIX_PATH项,类型PATH,值为QT 5.6安装目录,目录指定到msvc2015这一层)
CMake的选项设置
configure和generate都很成功。
然后转到build目录下,运行Geant4.sln,开始漫长的编译工作了~
编译成功后,要运行例子的话,需要先更改一些代码:
上面Geant4的build目录下的Geant4Config.cmake文件修改如下:
注释掉 find_package(Qt4 REQUIRED) 这一行,因为我们用的Qt5,不需要Qt4。
接下来就编译例子B2a,如图:
然后编译,设置各种DATA相关的环境变量,成功后运行可以看到界面:
例子B2a的QT5前端界面示例
(2)64位编译方法
64位编译时,QT也要安装相应的64位版本(文件名带_64的那个二进制包,qt-opensource-windows-x86-msvc2015_64-5.6.0-beta.exe)。启动CMake-GUI,编译器选择VS2015 64位版本。参考下图设置:
CMake
64位编译设置
64位编译时会出现大量MSB6006错误,方法Google一下后发现需要修改 C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets 文件,记得先备份。修改内容为去掉<CustomBuild 到 </CustomBuild>的这部分代码。
其它部分参考32位编译方法。
相关文章推荐
- Win10 + VS2015 下编译 Qt5.6.0
- Win10 VS2015 静态编译Qt5.6.2源码
- Win10 + VS2015 下编译 Qt5.6.0
- QJSON qt5.7.1+vs2015 WIN10编译
- Qt5.6 windows下vs2015(vs2012)编译ODBC
- win10系统下在vs2015中配置Caffe的详细过程
- Qt 5.6 5.8 vs2015 编译静态库版本(有全部的截图)good
- QCA+OPENSSL QT5.7.1 VS2015 WIN10 编译
- Win10 64位+VS2015 (community)下配置OpenCV过程详解
- Qt5.6 windows下vs2015编译QODBC
- win10+VS2015编译Trinity源码全过程
- win10系统VS2015编译ifcplusplus
- win10 64位系统 VS2015 专业版 OpenGL配置
- (win10 64位系统中)Visual Studio 2015+OpenCV 3.3.0环境搭建,100%成功
- VS2015在win10上编译的程序不能在Win7上运行的原因
- win10 qt5.7.1 VS2015 libqxt-qt5编译
- vs2012+qt4.8.3 编译过程
- VS 2015 64位CMake编译openCV3.1.0必备文件
- vs2015配置QT5.7 error MSB6006: “cmd.exe”已退出,系统找不到指定的路径
- VS2012 编译Qt 4.8.4完整过程