Tools: Application launcher/Build Instructions: Difference between revisions
From Commontk
				
				
				Jump to navigationJump to search
				
				m (→Mac)  | 
				|||
| (47 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
= Prerequisites: Build Qt statically =  | |||
== Qt 4.8.6 ==  | |||
<!--  | |||
=== Linux ===  | |||
=== Mac ===  | |||
-->  | |||
=== Windows ===  | |||
* Download the source: http://packages.kitware.com/download/item/6174/qt-everywhere-opensource-src-4.8.6.zip  | |||
* Extract archive into <code>C:\D\Support\qt-static-release-i386-4.8.6</code>  | |||
** Note: ''On windows, the library is built in the source tree. To avoid confusion, let's make sure the source directory is properly named''  | |||
* Download ftp://ftp.qt.nokia.com/jom/jom.zip  | |||
* Extract archive into <code>C:\D\Support\jom</code>  | |||
* Add "C:\D\Support\jom" to PATH  | |||
* Start <code>Visual Studio 32 bits Command Prompt</code>  | |||
<pre>  | |||
 cd C:\D\Support\qt-static-release-i386-4.8.6  | |||
 configure.exe -confirm-license -static -release -opensource -arch windows -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-ibase -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-webkit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-dbus -no-opengl -no-openvg -nomake demos  | |||
</pre>  | |||
* Build  | |||
<pre>  | |||
 jom  | |||
</pre>  | |||
== Qt 4.7.4 ==  | |||
* <code>-no-stl</code> flag shouldn't be used. See http://qt-project.org/forums/viewthread/9716/#55456  | |||
=== Linux ===  | |||
* Download the source  | |||
 cd Dashboards/Support  | |||
 wget http://packages.kitware.com/download/item/7521/qt-everywhere-opensource-src-4.7.4.tar.gz  | |||
 tar -xzvf qt-everywhere-opensource-src-4.7.4.tar.gz  | |||
* Configure  | |||
<pre>  | |||
./configure -prefix /home/kitware/Dashboards/Support/qt/qt-everywhere-opensource-static-release-4.7.4 -confirm-license -static -release -opensource -no-largefile -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -no-openvg -nomake demos -no-gtkstyle  | |||
</pre>  | |||
* Build and install  | |||
 make sub-src && make install  | |||
=   | === Mac ===  | ||
* Download the source  | |||
 cd Dashboards/Support  | |||
 curl -O http://packages.kitware.com/download/item/7521/qt-everywhere-opensource-src-4.7.4.tar.gz  | |||
 tar -xzvf qt-everywhere-opensource-src-4.7.4.tar.gz  | |||
* Configure  | |||
<pre>  | |||
./configure -prefix /Users/kitware/Dashboards/Support/qt-everywhere-opensource-static-build-4.7.4/ -confirm-license -arch x86_64 -static -release -opensource -no-largefile -no-exceptions -no-egl -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -nomake demos -sdk /Developer/SDKs/MacOSX10.5.sdk/  | |||
</pre>  | |||
* Build and install  | |||
 make sub-src -j3 && make install  | |||
=== Windows ===  | |||
* Download the source: http://packages.kitware.com/download/item/7520/qt-everywhere-opensource-src-4.7.4.zip  | |||
* Extract archive into <code>C:\D\Support\qt-static-release-i386-4.7.4</code>  | |||
** Note: ''On windows, the library is built in the source tree. To avoid confusion, let's make sure the source directory is properly named''  | |||
* Download ftp://ftp.qt.nokia.com/jom/jom.zip  | |||
* Extract archive into <code>C:\D\Support\jom</code>  | |||
* Add "C:\D\Support\jom" to PATH  | |||
* Start <code>Visual Studio 32 bits Command Prompt</code>  | |||
<pre>  | |||
 cd C:\D\Support\qt-static-release-i386-4.7.4  | |||
 configure.exe -confirm-license -static -release -opensource -arch windows -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-ibase -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-webkit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-dbus -no-opengl -no-openvg -nomake demos  | |||
</pre>  | |||
* Build  | |||
<pre>  | |||
 jom  | |||
</pre>  | |||
== Qt 4.7.0 ==  | |||
== Linux ==  | === Linux ===  | ||
* Download the   | * Download the source  | ||
  cd Dashboards/Support  |   cd Dashboards/Support  | ||
  wget http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0.tar.gz  |   wget http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0.tar.gz  | ||
| Line 12: | Line 86: | ||
* Configure  | * Configure  | ||
<pre>  | <pre>  | ||
./configure -prefix /home/jchris/Dashboards/Support/qt-static-release-4.7.0 -confirm-license -static -release -opensource -no-largefile -no-stl -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -no-openvg -nomake tools -nomake demos  | ./configure -prefix /home/jchris/Dashboards/Support/qt-static-release-4.7.0 -confirm-license -static -release -opensource -no-largefile -no-stl -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -no-openvg -nomake tools -nomake demos -no-gtkstyle  | ||
</pre>  | </pre>  | ||
| Line 18: | Line 92: | ||
  make && make install  |   make && make install  | ||
== Mac ==  | === Mac ===  | ||
* Download the   | |||
* Download the source  | |||
  cd Dashboards/Support  |   cd Dashboards/Support  | ||
  curl-O http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0.tar.gz  | |||
  tar -xzvf qt-everywhere-opensource-src-4.7.0.tar.gz  |   tar -xzvf qt-everywhere-opensource-src-4.7.0.tar.gz  | ||
| Line 32: | Line 107: | ||
  make && make install  |   make && make install  | ||
== Windows ==  | === Windows ===  | ||
* Download the source: http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0.zip  | |||
* Extract archive into C:\Dashboards\Support\qt-static-release-4.7.0  | |||
** Note: ''On windows, the library is built in the source tree. To avoid confusion, let's make sure the source directory is properly named''  | |||
<pre>  | |||
 cd C:\Dashboards\Support\qt-static-release-4.7.0  | |||
 configure.exe -confirm-license -static -release -opensource -arch windows -no-stl -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-ibase -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-webkit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-dbus -no-opengl -no-openvg -nomake tools -nomake demos  | |||
</pre>  | |||
* Build  | |||
<pre>  | |||
 nmake  | |||
</pre>  | |||
= Build the launcher =  | = Build the launcher =  | ||
| Line 51: | Line 137: | ||
* Note that an extra cmake variable has been specified: '''-DCMAKE_OSX_ARCHITECTURES:STRING="i386"'''  | * Note that an extra cmake variable has been specified: '''-DCMAKE_OSX_ARCHITECTURES:STRING="i386"'''  | ||
== Windows ==  | |||
= Package the launcher =  | |||
== Linux ==  | |||
== Mac ==  | |||
== Windows ==  | |||
Don't build the package via Visual Studio, but from the command line  | |||
 "c:\Program Files\CMake 2.8\bin\cpack.exe" -G TGZ  | |||
= Versioning =  | |||
See https://github.com/commontk/AppLauncher#maintainers-how-to-make-a-release-  | |||
<!--  | |||
Since there all development occurs on <code>master</code>, each time version is updated, two commits will be required.  | |||
== Release-candidate ==  | |||
=== Step1 ===  | |||
<code><RC></code> corresponds to the release candidate number. It is greater or equal to one.  | |||
* In <code>CMakeLists.txt</code>,   | |||
** set <code>CTKAppLauncher_VERSION_IS_RELEASE</code> to <code>1</code>  | |||
** uncomment and set <code>CTKAppLauncher_VERSION_RC</code> to <code><RC></code>  | |||
* ... and if this is the first release candidate, update at least one these variables:  | |||
** <code>CTKAppLauncher_MAJOR_VERSION</code>  | |||
** <code>CTKAppLauncher_MINOR_VERSION</code>  | |||
** <code>CTKAppLauncher_BUILD_VERSION</code>  | |||
* Commit message: <code>CTKAppLauncher X.Y.Z-rc<RC></code>  | |||
=== Step2 ===  | |||
* Generate packages based on SHA associated with step1.  | |||
=== Step3 ===  | |||
* In <code>CMakeLists.txt</code>, set <code>CTKAppLauncher_VERSION_IS_RELEASE</code> to <code>0</code>  | |||
* Commit message: <code>Begin post-X.Y.Z-rc<RC> development</code>  | |||
== Release ==  | |||
=== Step1 ===  | |||
* In <code>CMakeLists.txt</code>,   | |||
** set <code>CTKAppLauncher_VERSION_IS_RELEASE</code> to <code>1</code>  | |||
** comment <code>CTKAppLauncher_VERSION_RC</code> and reset to <code>1</code>  | |||
* Commit message: <code>CTKAppLauncher X.Y.Z</code>  | |||
=== Step2 ===  | |||
* Generate packages based on SHA associated with step1.  | |||
* Tag the repository:  | |||
  git tag -s -m "CTKAppLauncher X.Y.Z" vX.Y.Z  | |||
=== Step3 ===  | |||
* In <code>CMakeLists.txt</code>, set <code>CTKAppLauncher_VERSION_IS_RELEASE</code> to <code>0</code>  | |||
* Commit message: <code>Begin post-X.Y.Z development</code>  | |||
-->  | |||
Latest revision as of 23:20, 21 September 2017
Home < Tools: Application launcher < Build InstructionsPrerequisites: Build Qt statically
Qt 4.8.6
Windows
- Download the source: http://packages.kitware.com/download/item/6174/qt-everywhere-opensource-src-4.8.6.zip
 - Extract archive into 
C:\D\Support\qt-static-release-i386-4.8.6- Note: On windows, the library is built in the source tree. To avoid confusion, let's make sure the source directory is properly named
 
 - Download ftp://ftp.qt.nokia.com/jom/jom.zip
 - Extract archive into 
C:\D\Support\jom - Add "C:\D\Support\jom" to PATH
 - Start 
Visual Studio 32 bits Command Prompt 
cd C:\D\Support\qt-static-release-i386-4.8.6 configure.exe -confirm-license -static -release -opensource -arch windows -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-ibase -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-webkit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-dbus -no-opengl -no-openvg -nomake demos
- Build
 
jom
Qt 4.7.4
-no-stlflag shouldn't be used. See http://qt-project.org/forums/viewthread/9716/#55456
Linux
- Download the source
 
cd Dashboards/Support wget http://packages.kitware.com/download/item/7521/qt-everywhere-opensource-src-4.7.4.tar.gz tar -xzvf qt-everywhere-opensource-src-4.7.4.tar.gz
- Configure
 
./configure -prefix /home/kitware/Dashboards/Support/qt/qt-everywhere-opensource-static-release-4.7.4 -confirm-license -static -release -opensource -no-largefile -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -no-openvg -nomake demos -no-gtkstyle
- Build and install
 
make sub-src && make install
Mac
- Download the source
 
cd Dashboards/Support curl -O http://packages.kitware.com/download/item/7521/qt-everywhere-opensource-src-4.7.4.tar.gz tar -xzvf qt-everywhere-opensource-src-4.7.4.tar.gz
- Configure
 
./configure -prefix /Users/kitware/Dashboards/Support/qt-everywhere-opensource-static-build-4.7.4/ -confirm-license -arch x86_64 -static -release -opensource -no-largefile -no-exceptions -no-egl -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -nomake demos -sdk /Developer/SDKs/MacOSX10.5.sdk/
- Build and install
 
make sub-src -j3 && make install
Windows
- Download the source: http://packages.kitware.com/download/item/7520/qt-everywhere-opensource-src-4.7.4.zip
 - Extract archive into 
C:\D\Support\qt-static-release-i386-4.7.4- Note: On windows, the library is built in the source tree. To avoid confusion, let's make sure the source directory is properly named
 
 - Download ftp://ftp.qt.nokia.com/jom/jom.zip
 - Extract archive into 
C:\D\Support\jom - Add "C:\D\Support\jom" to PATH
 - Start 
Visual Studio 32 bits Command Prompt 
cd C:\D\Support\qt-static-release-i386-4.7.4 configure.exe -confirm-license -static -release -opensource -arch windows -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-ibase -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-webkit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-dbus -no-opengl -no-openvg -nomake demos
- Build
 
jom
Qt 4.7.0
Linux
- Download the source
 
cd Dashboards/Support wget http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0.tar.gz tar -xzvf qt-everywhere-opensource-src-4.7.0.tar.gz
- Configure
 
./configure -prefix /home/jchris/Dashboards/Support/qt-static-release-4.7.0 -confirm-license -static -release -opensource -no-largefile -no-stl -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -no-openvg -nomake tools -nomake demos -no-gtkstyle
- Build and install
 
make && make install
Mac
- Download the source
 
cd Dashboards/Support curl-O http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0.tar.gz tar -xzvf qt-everywhere-opensource-src-4.7.0.tar.gz
- Configure
 
./configure -prefix /Users/jjomier/Workspace/qt-static-release-4.7.0 -confirm-license -cocoa -universal -static -release -opensource -no-largefile -no-stl -no-exceptions -no-egl -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-sqlite_symbian -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-nis -no-cups -no-dbus -no-opengl -no-openvg-nomake tools -nomake demos
- Build and install
 
make && make install
Windows
- Download the source: http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0.zip
 - Extract archive into C:\Dashboards\Support\qt-static-release-4.7.0
- Note: On windows, the library is built in the source tree. To avoid confusion, let's make sure the source directory is properly named
 
 
cd C:\Dashboards\Support\qt-static-release-4.7.0 configure.exe -confirm-license -static -release -opensource -arch windows -no-stl -no-exceptions -no-accessibility -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-ibase -no-sql-tds -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-webkit -no-script -no-scripttools -no-declarative -no-gif -no-libtiff -no-libmng -no-openssl -no-dbus -no-opengl -no-openvg -nomake tools -nomake demos
- Build
 
nmake
Build the launcher
Linux
cd ~/Projects git clone git://github.com/commontk/AppLauncher.git mkdir AppLauncher-Release cd AppLauncher-Release cmake -DQT_QMAKE_EXECUTABLE:FILEPATH=/home/jchris/Dashboards/Support/qt-static-release-4.7.0/bin/qmake -DBUILD_TESTING:BOOL=ON -DBUILD_TYPE:STRING=Release ../AppLauncher
Mac
cd ~/Projects git clone git://github.com/commontk/AppLauncher.git mkdir AppLauncher-Release cd AppLauncher-Release cmake -DQT_QMAKE_EXECUTABLE:FILEPATH=/home/jchris/Dashboards/Support/qt-static-release-4.7.0/bin/qmake -DBUILD_TESTING:BOOL=ON -DBUILD_TYPE:STRING=Release -DCMAKE_OSX_ARCHITECTURES:STRING="i386"../AppLauncher
- Note that an extra cmake variable has been specified: -DCMAKE_OSX_ARCHITECTURES:STRING="i386"
 
Windows
Package the launcher
Linux
Mac
Windows
Don't build the package via Visual Studio, but from the command line
"c:\Program Files\CMake 2.8\bin\cpack.exe" -G TGZ
Versioning
See https://github.com/commontk/AppLauncher#maintainers-how-to-make-a-release-