3ds 如何编写软件_3ds转cia工具一键转换[通俗易懂]

3ds 如何编写软件_3ds转cia工具一键转换[通俗易懂]title:3DSlicer编译date:2021-08-1219:59:50tags:3DSlicer医学图像软件categories:医学图像处理与医学软件Qt编译下载Qt并解压源码从Qt5.15.0起,对于开源

3ds


title: 3DSlicer编译
date: 2021-08-12 19:59:50
tags:

  • 3DSlicer
  • 医学图像软件
    categories:
  • 医学图像处理与医学软件

Qt编译

下载Qt并解压源码

从Qt5.15.0起,对于开源用户,Qt官方不再提供独立安装文件,且不再有bug修复版本(比如Qt5.15.1)

如果想体验Qt5.15及之后的版本,就要培养一个新技能——编译Qt源码

从编译到发布大概需要这么几个步骤:

  1. 从Qt官网下载源码;
  2. 编译源码;
  3. 将编译后的qmake.exe导入QtCreator或者Visual Studio;
  4. 使用QtCreator或者Visual Studio编译Qt项目;
  5. 项目发布可仍然使用windeployqt.exe

下载并解压源码

下载后解压即可,为了节省后面折腾的时间,我建议你解压到 “d:\qtsrc”这个目录。简单说一下,放在哪个盘是你自己决定的,需要保证这个盘有100GB+的剩余空间就行。为什么我起了qtsrc这个目录呢,因为默认的文件夹名字“qt-everywhere-src-5.15.0”名字太长,在windows下编译时,可能编译了几个小时后出现奇怪的错误,因为它调用的脚本处理不了太长的路径。

编译QT

编译环境选择:MinGW/MSVC

在Windows上,有两个预构建环境可供选择:一个是 MinGW ,另一个是Microsoft Visual Studio(MSVC)。这两个环境不兼容,无法混合。你必须选择一个。

这两者的区别如下:

当你的项目使用MinGW编译的使用,想要用一个MSVC编译生成的库时就会有问题。使用MinGW编译项目的时候,所使用的Lib也要是MinGW编译的。如果你只是开发Window平台的软件时,最好用Qt MSVC组合,这样可以使用大量的第三方lib,还有很多的构建指令,毕竟window上MSVC才是王道。

我选择MSVC,打开安装VS时自带安装的MSCV:x64 Native Tools Command Prompt for VS 2019

**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.4.5
** Copyright (c) 2019 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community>

默认编译的结果是64位的Qt

如果你想编译32位版本的qt,可以选择x86 Native Tools Command Prompt for VS 2019

警告:不要使用 Developer Command Prompt for VS 2019

编译

在D盘新建一个目录用来存放编译好的内容:D:\qt

x64 Native Tools Command Prompt for VS 2019的终端进入Qt源代码目录:

C:\Users\peter\Downloads>cd qt-everywhere-src-5.14.1
C:\Users\peter\Downloads\qt-everywhere-src-5.14.1>

1.修改源码里的qtbase\mkspecs\common\msvc-desktop.conf文件

修改-MD为-MT

修改前:

QMAKE_CFLAGS_RELEASE    = $$QMAKE_CFLAGS_OPTIMIZE -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MD
QMAKE_CFLAGS_DEBUG      = -Zi -MDd

修改后:

QMAKE_CFLAGS_RELEASE    = $$QMAKE_CFLAGS_OPTIMIZE -MT
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MT
QMAKE_CFLAGS_DEBUG      = -Zi -MTd

D的意思是动态编译(dynamic link),T的意思是静态编译(static link)。 这一步官方教程没有要求,但其他人的很多教程里都有写,我就加上了

2.配置config文件:

配置命令如下:

configure.bat -static -prefix "D:\qt" -confirm-license -opensource  -debug-and-release -platform win32-msvc  -nomake examples -nomake tests  -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -mp

-skip qtwebengine 不知道可不可以加进来

configure -static -prefix "C:\QtBuildD" -confirm-license -opensource -debug-and-release -platform win32-msvc -nomake examples -nomake tests  -skip qtwebengine -opengl desktop -mp

具体含义如下:

configure.bat 
-static #指明是静态编译
-prefix "D:\qt" #指明安装的目录
-confirm-license -opensource  #指明是开源版本的qt
-debug-and-release #指明需要debug版和release版,可以单独选择release版
-platform win32-msvc  #指明使用msvc编译,这里的win32并不指32位
-nomake examples -nomake tests  #不编译样例
-plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg #可选插件
-opengl desktop  #用系统自带的opengl
-mp #多核编译
-skip qtwebengine这个参数不能省略,qtwebengine模块有需要依赖的库,这里不跳过编译会失败。
C:\Users\peter\Downloads\qt-everywhere-src-5.14.1>configure.bat -static -prefix "D:\qt" -confirm-license -opensource  -debug-and-release -platform win32-msvc  -nomake examples -nomake tests  -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -mp
+ cd qtbase
+ C:\Users\peter\Downloads\qt-everywhere-src-5.14.1\qtbase\configure.bat -top-level -static -prefix "D:\qt" -confirm-license -opensource  -debug-and-release -platform win32-msvc  -nomake examples -nomake tests  -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -mp

Notice: re-mapping requested qmake spec to unified 'win32-msvc'.

Bootstrapping qmake ...
....
Qt is now configured for building. Just run 'nmake'.
Once everything is built, you must run 'nmake install'.
Qt will be installed into 'D:\qt'.

Prior to reconfiguration, make sure you remove any leftovers from
the previous build.

3.make

上面提到过在Windows上,有两个预构建环境可供选择:一个是MinGW,另一个是Microsoft Visual Studio(MSVC)。

我选择的是msvc环境,使用命令nmake即可进行编译。

nmake

我的CPU是i7-8565U,CPU100%运行,花费了大约3个小时。

make完成后源码和编译后的共有26G

4.make install

使用nmake单线程install:

nmake install

安装完成后,QT的文件夹有4G

编译QtWebengine

刚才输入的configure,里面有个-skip qtwebengine,是的,如其名,把QtWebengine模块给跳过去了,为什么跳过去呢,因为编译它实在是太复杂了,它的代码量堪比其他所有模块的代码量之和。编译时长也比其他所有模块编译的总时长还要长。

而且,它只支持64位,所以为了兼容32位,我们要换个工具,VS2019安装目录下的x64_x86 Cross Tools Command Prompt for VS 2019。

打开这个x64_x86工具,我建议你再做几个准备工作:

1)把QtWebengine源码拷贝到根目录,比如D:\Qt\qtwebengine

2)新建一个文件夹,比如D:\Qt\bwe (寓意BuildWebEngine),当然啦,这个盘也要有100GB+的剩余空间

然后就开始吧:

在x64_x86控制台下

 cd d:\Qt\bwe

输入

C:\QtBuild\bin\qmake.exe C:\qtwebengine

(可以直接用刚才编好的5.15的qmake

报错

Running configuration tests...
Done running configuration tests.

Configure summary:

Qt WebEngine Build Tools:
  Use System Ninja ....................... no
  Use System Gn .......................... no
  Jumbo Build Merge Limit ................ no
  Developer build ........................ no

Note: The following modules are not being compiled in this configuration:
    webenginecore
    webengine
    webenginewidgets
    pdf
    pdfwidgets

WARNING: Tool gperf is required to build QtWebEngine.

WARNING: QtWebEngine will not be built.

WARNING: QtPdf will not be built.

Qt is now configured for building. Just run 'nmake'.
Once everything is built, you must run 'nmake install'.
Qt will be installed into 'C:\QtBuild'.

Prior to reconfiguration, make sure you remove any leftovers from
the previous build.
安装Gperf

Gperf from http://gnuwin32.sourceforge.net/packages/gperf.htm。设置PATH路径。

WARNING: Tool bison is required to build QtWebEngine.
安装Bison

安装Bison and flex from https://sourceforge.net/projects/winflexbison/ (Rename win-bison.exe to bison.exe and win-flex.exe to flex.exe)。重命名win_bison 为Bison win-flex为flex.exe ,设置PATH路径。

Perl

http://strawberryperl.com/

 nmake 

(然后等着吧,几个小时)

如果没有报错,就可以愉快的

 nmake install

有一点我不确定,就是在上面输入C:\Qt\Qt-5.15.0\bin\qmake.exe d:\Qt\qtwebengine时,是否会把debug和release版本都编了。因为我在编译QtWebengine时还没有编译Qt的release版,所以编译出的QtWebengine也只有debug版。之后我又用C:\Qt\Qt-5.15.0\bin\qmake.exe -release d:\Qt\qtwebengine编译了QtWebengine的release版,才算补充完整。

error: “Couldn’t resolve host name”

CMake Error at CMake/SlicerCheckCMakeHTTPS.cmake:33 (message):
error: “Couldn’t resolve host name”

DLL缺失

C:\D\S4D\VTK-build\bin\Debug;
C:\Slicer\ITKv4-build\bin\Debug;
C:\Slicer\teem-build\bin\Debug;
C:\Slicer\LibArchive-build\bin\Debug;
C:\Slicer\DCMTK-build\bin\Debug;
C:\Slicer\OpenIGTLink-build\bin\Debug;
C:\Slicer\tcl-build\bin;
C:\Slicer\SlicerExecutionModel-build\ModuleDescriptionParser\bin\Debug;
C:\Slicer\CTK-build\CTK-build\bin\Debug;
C:\Slicer\CTK-build\PythonQt-build\Debug;
C:\Qt5.15\5.15.0\msvc2019_64\bin

今天的文章3ds 如何编写软件_3ds转cia工具一键转换[通俗易懂]分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/77168.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注