Tools: Application launcher/Build Instructions: Difference between revisions

From Commontk
Jump to navigationJump to search
Line 1: Line 1:
= Prerequisites: Build Qt statically =
= 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 ==
== Qt 4.7.4 ==
Line 9: Line 32:
* Download the source
* Download the source
  cd Dashboards/Support
  cd Dashboards/Support
  wget http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.4.tar.gz
  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
  tar -xzvf qt-everywhere-opensource-src-4.7.4.tar.gz


Line 23: Line 46:
* Download the source
* Download the source
  cd Dashboards/Support
  cd Dashboards/Support
  curl -O http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.4.tar.gz
  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
  tar -xzvf qt-everywhere-opensource-src-4.7.4.tar.gz


Line 36: Line 59:
=== Windows ===
=== Windows ===


* Download the source: http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.4.zip
* 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>
* 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''
** Note: ''On windows, the library is built in the source tree. To avoid confusion, let's make sure the source directory is properly named''

Revision as of 17:34, 3 February 2015

Home < Tools: Application launcher < Build Instructions

Prerequisites: Build Qt statically

Qt 4.8.6

Linux

Mac

Windows

 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

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

 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

 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

Versionning

Since there all development occurs on master, each time version is updated, two commits will be required.

Release-candidate

Step1

<RC> corresponds to the release candidate number. It is greater or equal to one.

  • In CMakeLists.txt,
    • set CTKAppLauncher_VERSION_IS_RELEASE to 1
    • uncomment and set CTKAppLauncher_VERSION_RC to <RC>
  • ... and if this is the first release candidate, update at least one these variables:
    • CTKAppLauncher_MAJOR_VERSION
    • CTKAppLauncher_MINOR_VERSION
    • CTKAppLauncher_BUILD_VERSION
  • Commit message: CTKAppLauncher X.Y.Z-rc<RC>

Step2

  • Generate packages based on SHA associated with step1.

Step3

  • In CMakeLists.txt, set CTKAppLauncher_VERSION_IS_RELEASE to 0
  • Commit message: Begin post-X.Y.Z-rc<RC> development

Release

Step1

  • In CMakeLists.txt,
    • set CTKAppLauncher_VERSION_IS_RELEASE to 1
    • comment CTKAppLauncher_VERSION_RC and reset to 1
  • Commit message: CTKAppLauncher X.Y.Z

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 CMakeLists.txt, set CTKAppLauncher_VERSION_IS_RELEASE to 0
  • Commit message: Begin post-X.Y.Z development