diff -r 41300fa6a67c -r f7bc934e204c doc/src/snippets/code/doc_src_deployment.qdoc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/src/snippets/code/doc_src_deployment.qdoc Wed Mar 31 11:06:36 2010 +0300 @@ -0,0 +1,487 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +//! [0] +cd /path/to/Qt +./configure -static -prefix /path/to/Qt +make sub-src +//! [0] + + +//! [1] +cd /path/to/Qt/examples/tools/plugandpaint +//! [1] + + +//! [2] +make clean +PATH=/path/to/Qt/bin:$PATH +export PATH +qmake -config release +make +//! [2] + + +//! [3] +ldd ./application +//! [3] + + +//! [4] +cd /path/to/Qt/examples/tools/plugandpaint +//! [4] + + +//! [5] +make clean +qmake -config release +make +//! [5] + + +//! [6] +cd ../plugandpaintplugins +make clean +qmake -config release +make +//! [6] + + +//! [7] +#!/bin/sh +appname=`basename $0 | sed s,\.sh$,,` + +dirname=`dirname $0` +tmp="${dirname#?}" + +if [ "${dirname%$tmp}" != "/" ]; then +dirname=$PWD/$dirname +fi +LD_LIBRARY_PATH=$dirname +export LD_LIBRARY_PATH +$dirname/$appname $* +//! [7] + + +//! [8] +DESTDIR = /path/to/Qt/plugandpaint/plugins +//! [8] + + +//! [9] +qApp->addLibraryPath("/some/other/path"); +//! [9] + + +//! [10] +ldd ./application +//! [10] + + +//! [11] +cd C:\path\to\Qt +configure -static +//! [11] + + +//! [12] +nmake sub-src +//! [12] + + +//! [13] +cd examples\tools\plugandpaint +//! [13] + + +//! [14] +nmake clean +qmake -config release +nmake +//! [14] + + +//! [15] +cd examples\tools\plugandpaint +//! [15] + + +//! [16] +nmake clean +qmake -config release +nmake +//! [16] + + +//! [17] +cd ..\plugandpaintplugins +nmake clean +qmake -config release +nmake +//! [17] + + +//! [18] +plugins\pnp_basictools.dll +plugins\pnp_extrafilters.dll +//! [18] + + +//! [19] +qApp->addLibraryPath("C:\some\other\path"); +//! [19] + + +//! [20] +embed_manifest_dll +embed_manifest_exe +//! [20] + + +//! [21] +CONFIG += embed_manifest_exe +//! [21] + + +//! [22] +\VC\redist\\Microsoft.VC80.CRT +//! [22] + + +//! [23] +CONFIG-=embed_manifest_dll +//! [23] + + +//! [24] +depends +//! [24] + + +//! [25] +C:\plugins +//! [25] + + +//! [26] +CONFIG-=app_bundle +//! [26] + + +//! [27] +cd /path/to/Qt +./configure -static +make sub-src +//! [27] + + +//! [28] +cd /path/to/Qt/examples/tools/plugandpaint +//! [28] + + +//! [29] +make clean +qmake -config release +make +//! [29] + + +//! [30] +otool -L plugandpaint.app/Contents/MacOs/plugandpaint +//! [30] + + +//! [31] +plugandpaint.app/Contents/MacOS/plugandpaint: +/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon + (compatibility version 2.0.0, current version 128.0.0) +/System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime + (compatibility version 1.0.0, current version 10.0.0) +/usr/lib/libz.1.dylib + (compatibility version 1.0.0, current version 1.2.3) +/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices + (compatibility version 1.0.0, current version 22.0.0) +/usr/lib/libstdc++.6.dylib + (compatibility version 7.0.0, current version 7.3.0) +/usr/lib/libgcc_s.1.dylib + (compatibility version 1.0.0, current version 1.0.0) +/usr/lib/libmx.A.dylib + (compatibility version 1.0.0, current version 92.0.0) +/usr/lib/libSystem.B.dylib + (compatibility version 1.0.0, current version 88.0.0) +//! [31] + + +//! [32] +-lQtGui +//! [32] + + +//! [33] +/where/static/qt/lib/is/libQtGui.a +//! [33] + + +//! [34] +cd /path/to/Qt/examples/tools/plugandpaint +//! [34] + + +//! [35] +make clean +qmake -config release +make +//! [35] + + +//! [36] +cd ../plugandpaintplugins +make clean +qmake -config release +make +//! [36] + + +//! [37] +otool -L QtGui.framework/QtGui +//! [37] + + +//! [38] +QtGui.framework/QtGui: +/path/to/Qt/lib/QtGui.framework/Versions/4.0/QtGui + (compatibility version 4.0.0, current version 4.0.1) +/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon + (compatibility version 2.0.0, current version 128.0.0) +/System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime + (compatibility version 1.0.0, current version 10.0.0) +/path/to/Qt/QtCore.framework/Versions/4.0/QtCore + (compatibility version 4.0.0, current version 4.0.1) +/usr/lib/libz.1.dylib + (compatibility version 1.0.0, current version 1.2.3) +/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices + (compatibility version 1.0.0, current version 22.0.0) +/usr/lib/libstdc++.6.dylib + (compatibility version 7.0.0, current version 7.3.0) +/usr/lib/libgcc_s.1.dylib + (compatibility version 1.0.0, current version 1.0.0) +/usr/lib/libmx.A.dylib + (compatibility version 1.0.0, current version 92.0.0) +/usr/lib/libSystem.B.dylib + (compatibility version 1.0.0, current version 88.0.0) +//! [38] + + +//! [39] +mkdir plugandpaint.app/Contents/Frameworks +cp -R /path/to/Qt/lib/QtCore.framework + plugandpaint.app/Contents/Frameworks +cp -R /path/to/Qt/lib/QtGui.framework + plugandpaint.app/Contents/Frameworks +//! [39] + + +//! [40] +install_name_tool -id @executable_path/../Frameworks/QtCore.framework/Versions/4.0/QtCore + plugandpaint.app/Contents/Frameworks/QtCore.framework/Versions/4.0/QtCore +install_name_tool -id @executable_path/../Frameworks/QtGui.framework/Versions/4.0/QtGui + plugandpaint.app/Contents/Frameworks/QtGui.framework/Versions/4.0/QtGui +//! [40] + + +//! [41] +install_name_tool -change path/to/Qt/lib/QtCore.framework/Versions/4.0/QtCore + @executable_path/../Frameworks/QtCore.framework/Versions/4.0/QtCore + plugandpaint.app/Contents/MacOs/plugandpaint +install_name_tool -change path/to/qt/lib/QtGui.framework/Versions/4.0/QtGui + @executable_path/../Frameworks/QtGui.framework/Versions/4.0/QtGui + plugandpaint.app/Contents/MacOs/plugandpaint +//! [41] + + +//! [42] +install_name_tool -change path/to/Qt/lib/QtCore.framework/Versions/4.0/QtCore + @executable_path/../Frameworks/QtCore.framework/Versions/4.0/QtCore + plugandpaint.app/Contents/Frameworks/QtGui.framework/Versions/4.0/QtGui +//! [42] + + +//! [43] +mv plugins plugandpaint.app/Contents +//! [43] + + +//! [44] +libpnp_basictools.dylib: +libpnp_basictools.dylib + (compatibility version 0.0.0, current version 0.0.0) +/path/to/Qt/lib/QtGui.framework/Versions/4.0/QtGui + (compatibility version 4.0.0, current version 4.0.1) +/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon + (compatibility version 2.0.0, current version 128.0.0) +/System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime + (compatibility version 1.0.0, current version 10.0.0) +/path/to/Qt/lib/QtCore.framework/Versions/4.0/QtCore + (compatibility version 4.0.0, current version 4.0.1) +/usr/lib/libz.1.dylib + (compatibility version 1.0.0, current version 1.2.3) +/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices + (compatibility version 1.0.0, current version 22.0.0) +/usr/lib/libstdc++.6.dylib + (compatibility version 7.0.0, current version 7.3.0) +/usr/lib/libgcc_s.1.dylib + (compatibility version 1.0.0, current version 1.0.0) +/usr/lib/libmx.A.dylib + (compatibility version 1.0.0, current version 92.0.0) +/usr/lib/libSystem.B.dylib + (compatibility version 1.0.0, current version 88.0.0) +//! [44] + + +//! [45] +install_name_tool -change /path/to/Qt/lib/QtCore.framework/Versions/4.0/QtCore + @executable_path/../Frameworks/QtCore.framework/Versions/4.0/QtCore + plugandpaint.app/Contents/plugins/libpnp_basictools.dylib +install_name_tool -change /path/to/Qt/lib/QtGui.framework/Versions/4.0/QtGui + @executable_path/../Frameworks/QtGui.framework/Versions/4.0/QtGui + plugandpaint.app/Contents/plugins/libpnp_basictools.dylib +//! [45] + + +//! [46] +#elif defined(Q_OS_MAC) +if (pluginsDir.dirName() == "MacOS") { + pluginsDir.cdUp(); +} +#endif +//! [46] + + +//! [47] +cp -R /path/to/Qt/plugins/imageformats + pluginandpaint.app/Contents/plugins +//! [47] + + +//! [48] +install_name_tool -change /path/to/Qt/lib/QtGui.framework/Versions/4.0/QtGui + @executable_path/../Frameworks/QtGui.framework/Versions/4.0/QtGui + plugandpaint.app/Contents/plugins/imageformats/libqjpeg.dylib +install_name_tool -change /path/to/Qt/lib/QtCore.framework/Versions/4.0/QtCore + @executable_path/../Frameworks/QtCore.framework/Versions/4.0/QtCore + plugandpaint.app/Contents/plugins/imageformats/libqjpeg.dylib +//! [48] + + +//! [49] +QDir dir(QApplication::applicationDirPath()); +dir.cdUp(); +dir.cd("plugins"); +QApplication::setLibraryPaths(QStringList(dir.absolutePath())); +//! [49] + + +//! [50] +otool -L MyApp.app/Contents/MacOS/MyApp +//! [50] + + +//! [51] +QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.3 +//! [51] + +//! [51a] +install_name_tool -change /System/Library/Frameworks/CoreVideo.framework/ +Versions/A/CoreVideo /System/Library/Frameworks/QuartzCore.framework/ +Versions/A/QuartzCore libphonon_qt7.dylib +//! [51a] + +//! [51b] +./CONFIGURE - SDK MacOSX10.4u.sdk +//! [51b] + +//! [52] +./configure (other arguments) -universal -sdk /Developer/SDKs/MacOSX10.4u.sdk +//! [52] + + +//! [53] +QMAKE_MAC_SDK=/Developer/SDKs/MacOSX10.4u.sdk +CONFIG+=x86 ppc +//! [53] + + +//! [54] +qApp->addLibraryPath("C:/customPath/plugins"); +//! [54] + +//! [55] +cd examples\widgets\wiggly +//! [55] + +//! [56] +vendorinfo = \ + "%{\"Example Localized Vendor\"}" \ + ":\"Example Vendor\"" + +my_deployment.pkg_prerules = vendorinfo +DEPLOYMENT += my_deployment +//! [56] + +//! [57] +supported_platforms = \ + "; This demo only supports S60 5.0" \ + "[0x1028315F],0,0,0,{\"S60ProductID\"}" + +default_deployment.pkg_prerules -= pkg_platform_dependencies +my_deployment.pkg_prerules += supported_platforms +DEPLOYMENT += my_deployment +//! [57] + +//! [58] +qmake +make release-gcce +//! [58] + +//! [59] +make installer_sis +//! [59] \ No newline at end of file