Update build docs [skip ci]

Update for windows 64 bit build steps
master
huxingyi 2020-03-14 14:41:29 +09:30
parent 9c3a0ba861
commit c148a8ca2c
2 changed files with 115 additions and 20 deletions

View File

@ -1,34 +1,121 @@
"""""""""""""""""
Building Dust3D Building Dust3D
------------------- """""""""""""""""
...........
Overview Overview
========== ...........
The UI of Dust3D built in Qt5, the only third party dependency which should be compiled separately is the CGAL library, however, CGAL will introduce some new dependencies, such as boost and gmp library.
The UI of Dust3D is built on Qt5, the third party dependencies which may need to be compiled separately are the CGAL and Instant Meshes, however, CGAL will introduce some new dependencies, such as boost and gmp library.
===================
Prerequisites Prerequisites
=============== ===================
* Qt
https://www.qt.io
* CGAL * CGAL
https://www.cgal.org/ https://www.cgal.org
* Instant Meshes
https://github.com/wjakob/instant-meshes
* Boost
https://www.boost.org
* CMake
https://cmake.org/
===================
Building Building
========== ===================
Here is the snapshot of the command line of one build, you may use different defines on your system. If you encounter build issues, please follow the ci files step by step, Here are the snapshots of the build commands on different platforms, you may use customized defines on your system. If you encounter build issues, please follow the ci files step by step,
Windows:
https://github.com/huxingyi/dust3d/blob/master/appveyor.yml https://github.com/huxingyi/dust3d/blob/master/appveyor.yml
Mac and Linux:
https://github.com/huxingyi/dust3d/blob/master/.travis.yml https://github.com/huxingyi/dust3d/blob/master/.travis.yml
* Windows ----------------------
Windows
----------------------
**The following steps are for windows 64 bit, please refer to the appveyor.yml file for windows 32 bit**
Install `Qt 5.13.2`_
.. _Qt 5.13.2: http://download.qt.io/official_releases/qt/5.13/5.13.2/qt-opensource-windows-x86-5.13.2.exe
Install ``Visual Studio 2017`` Community edition
Install ``CMake``, during installation, choose ``Add CMake to the system PATH for the current user``
Download `boost 1.66`_ and extract to ``C:\Libraries`` make sure you got your boost path on ``C:\Libraries\boost_1_66_0``
.. _boost 1.66: https://www.boost.org/users/history/version_1_66_0.html
Download `Dust3D Source Repository`_ and extract to your desktop as ``C:\Users\IEUser\Desktop\dust3d``, please note the ``IEUser`` should be replaced with your windows user name.
.. _Dust3D Source Repository: https://github.com/huxingyi/dust3d/archive/master.zip
Build ``CGAL`` as the following steps:
.. code-block:: none .. code-block:: none
From Start Menu, Open Visual Studio 2017 Tools Command Prompt: From Start Menu, Open x64 Native Tools Command Prompt for VS 2017:
C:\Program Files\Microsoft Visual Studio\2017\Community>cd C:\Users\IEUser\Desktop\dust3d C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>cd C:\Users\IEUser\Desktop\dust3d
C:\Users\IEUser\Desktop\dust3d>qmake DEFINES+=BOOST_INCLUDEDIR=C:\dev\boost_1_55_0\boost_1_55_0 DEFINES+=CGAL_DIR=C:\dev\CGAL-4.13 C:\Users\IEUser\Desktop\dust3d>cd thirdparty\cgal\CGAL-4.13
C:\Users\IEUser\Desktop\dust3d>nmake -f Makefile.Release C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13>mkdir build
C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13>cd build
C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13\build>cmake -G "Visual Studio 15 2017" -A x64 ../ -DBOOST_INCLUDEDIR=C:\Libraries\boost_1_66_0
C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13\build>msbuild /p:Configuration=Release ALL_BUILD.vcxproj
* Mac Build ``Instant Meshes`` as the following steps:
.. code-block:: none
From Start Menu, Open x64 Native Tools Command Prompt for VS 2017:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>cd C:\Users\IEUser\Desktop\dust3d
C:\Users\IEUser\Desktop\dust3d>cd thirdparty\instant-meshes
C:\Users\IEUser\Desktop\dust3d\thirdparty\instant-meshes>mkdir build
C:\Users\IEUser\Desktop\dust3d\thirdparty\instant-meshes>cd build
C:\Users\IEUser\Desktop\dust3d\thirdparty\instant-meshes\build>cmake -G "Visual Studio 15 2017" -A x64 ../
C:\Users\IEUser\Desktop\dust3d\thirdparty\instant-meshes\build>msbuild /p:Configuration=RelWithDebInfo ALL_BUILD.vcxproj
Build ``Dust3D`` as the following steps:
.. code-block:: none
From Start Menu, Open x64 Native Tools Command Prompt for VS 2017:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>cd C:\Users\IEUser\Desktop\dust3d
C:\Users\IEUser\Desktop\dust3d>set PATH=%PATH%;C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin
C:\Users\IEUser\Desktop\dust3d>qmake "BOOST_INCLUDEDIR=C:\Libraries\boost_1_66_0" "CGAL_DIR=C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13"
C:\Users\IEUser\Desktop\dust3d>nmake -f Makefile.Release
After dust3d.exe is been built in C:\Users\IEUser\Desktop\dust3d\release, copy the following files to release folder:
C:\Users\IEUser\Desktop\dust3d\thirdparty\instant-meshes\build\RelWithDebInfo\instant-meshes.dll
C:\Users\IEUser\Desktop\dust3d\thirdparty\instant-meshes\build\ext_build\tbb\RelWithDebInfo\tbb.dll
C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13\build\bin\Release\CGAL-vc140-mt-4.13.dll
C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13\auxiliary\gmp\lib\libgmp-10.dll
C:\Users\IEUser\Desktop\dust3d\thirdparty\cgal\CGAL-4.13\auxiliary\gmp\lib\libmpfr-4.dll
C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin\Qt5Widgets.dll
C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin\Qt5Gui.dll
C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin\Qt5Core.dll
C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin\Qt5Network.dll
C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin\opengl32sw.dll
Now run dust3d.exe
----------------------
Mac
----------------------
**Outdated, help needed**
.. code-block:: sh .. code-block:: sh
@ -36,7 +123,11 @@ Here is the snapshot of the command line of one build, you may use different def
$ qmake -spec macx-xcode $ qmake -spec macx-xcode
Open dust3d.xcodeproj in Xcode and build Open dust3d.xcodeproj in Xcode and build
* Ubuntu ----------------------
Ubuntu
----------------------
**Outdated, help needed**
.. code-block:: sh .. code-block:: sh
@ -68,7 +159,11 @@ Here is the snapshot of the command line of one build, you may use different def
$ make $ make
$ ./dust3d $ ./dust3d
* Fedora ----------------------
Fedora
----------------------
**Outdated, help needed**
.. code-block:: sh .. code-block:: sh

View File

@ -20,13 +20,13 @@
# -- Project information ----------------------------------------------------- # -- Project information -----------------------------------------------------
project = u'dust3d' project = u'dust3d'
copyright = u'2018, Xingyi HU' copyright = u'2020, Jeremyi HU'
author = u'Xingyi HU' author = u'Jeremyi HU'
# The short X.Y version # The short X.Y version
version = u'' version = u''
# The full version, including alpha/beta/rc tags # The full version, including alpha/beta/rc tags
release = u'1.0.0-beta' release = u'1.0.0-rc.1'
# -- General configuration --------------------------------------------------- # -- General configuration ---------------------------------------------------
@ -129,7 +129,7 @@ latex_elements = {
# author, documentclass [howto, manual, or own class]). # author, documentclass [howto, manual, or own class]).
latex_documents = [ latex_documents = [
(master_doc, 'dust3d.tex', u'dust3d Documentation', (master_doc, 'dust3d.tex', u'dust3d Documentation',
u'Xingyi HU', 'manual'), u'Jeremyi HU', 'manual'),
] ]
@ -150,6 +150,6 @@ man_pages = [
# dir menu entry, description, category) # dir menu entry, description, category)
texinfo_documents = [ texinfo_documents = [
(master_doc, 'dust3d', u'dust3d Documentation', (master_doc, 'dust3d', u'dust3d Documentation',
author, 'dust3d', 'One line description of project.', author, 'dust3d', 'dust3d Documentation',
'Miscellaneous'), 'Miscellaneous'),
] ]