[QGIS Commit] r10647 -
docs/trunk/english_us/coding-compilation_guide
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Fri Apr 24 03:13:18 EDT 2009
Author: dassau
Date: 2009-04-24 03:13:17 -0400 (Fri, 24 Apr 2009)
New Revision: 10647
Added:
docs/trunk/english_us/coding-compilation_guide/introduction.tex
Modified:
docs/trunk/english_us/coding-compilation_guide/coding.tex
docs/trunk/english_us/coding-compilation_guide/install.tex
Log:
added introduction file (not yet written)
updated coding.tex and install.tex from QGIS sources
Modified: docs/trunk/english_us/coding-compilation_guide/coding.tex
===================================================================
--- docs/trunk/english_us/coding-compilation_guide/coding.tex 2009-04-24 02:35:19 UTC (rev 10646)
+++ docs/trunk/english_us/coding-compilation_guide/coding.tex 2009-04-24 07:13:17 UTC (rev 10647)
@@ -8,7 +8,7 @@
The following chapters provide coding information for QGIS Version \CURRENT.
This document corresponds almost to a \LaTeX~ conversion of
-the CODING.t2t file coming with the QGIS sources from December, 16th 2008.
+the CODING.t2t file coming with the QGIS sources from April, 24th 2009.
These standards should be followed by all QGIS developers. Current information
about QGIS Coding Standards are also available from wiki at:
@@ -197,13 +197,15 @@
Here are described some programming hints and tips that will hopefully reduce errors, development time, and maintenance.
\subsubsection{Where-ever Possible Generalize Code}
+\begin{verbatim}
+If you are cut-n-pasting code, or otherwise writing the same thing more than once,
+consider consolidating the code into a single function.
+\end{verbatim}
-If you are cut-n-pasting code, or otherwise writing the same thing more than once, consider consolidating the code
-into a single function.
+This will:
-This will allow changes to be made in one location instead of in multiple places
-
\begin{itemize}
+\item allow changes to be made in one location instead of in multiple places
\item help prevent code bloat
\item make it more difficult for multiple copies to evolve differences over time, thus making it harder to understand and maintain for others
\end{itemize}
@@ -282,14 +284,17 @@
\subsubsection{Book recommendations}
-Effective C++ \url{http://www.awprofessional.com/title/0321334876} \\
-More Effective C++ \url{http://www.awprofessional.com/bookstore/product.asp?isbn=020163371X&rl=1} \\
-Effective STL \url{http://www.awprofessional.com/title/0201749629} \\
-Design Patterns \url{http://www.awprofessional.com/title/0201634988}
+\begin{itemize}
+\item \htmladdnormallink{Effective C++}{http://www.awprofessional.com/title/0321334876}, Scott Meyers
+\item \htmladdnormallink{More Effective C++}{http://www.awprofessional.com/bookstore/product.asp?isbn=020163371X&rl=1}, Scott Meyers
+\item \htmladdnormallink{Effective STL}{http://www.awprofessional.com/title/0201749629}, Scott Meyers
+\item \htmladdnormallink{Design Patterns}{http://www.awprofessional.com/title/0201634988}, GoF
+\end{itemize}
-You should also really read this article from Qt Quarterly on designing Qt style
-\url{http://doc.trolltech.com/qq/qq13-apis.html}
+You should also really read this article from Qt Quarterly on
+\htmladdnormallink{http://doc.trolltech.com/qq/qq13-apis.html designing Qt style}{APIs}
+
\section{SVN Access}
This page describes how to get started using the QGIS Subversion repository
@@ -297,7 +302,7 @@
To check out QGIS HEAD:
\begin{verbatim}
- svn --username [your user name] co https://svn.qgis.org/repos/qgis/trunk/qgis
+ svn --username [your user name] co https://svn.osgeo.org/qgis/trunk/qgis
\end{verbatim}
\subsection{Anonymous Access}
@@ -311,18 +316,18 @@
To check out a branch
\begin{verbatim}
- svn co https://svn.qgis.org/repos/qgis/branches/<branch name>
+ svn co https://svn.osgeo.org/qgis/branches/<branch name>
\end{verbatim}
To check out SVN stable trunk:
\begin{verbatim}
- svn co https://svn.qgis.org/repos/qgis/trunk/qgis qgis_unstable
+ svn co https://svn.osgeo.org/qgis/trunk/qgis qgis_trunk
\end{verbatim}
-/!$\backslash$ \textbf{Note:} If you are behind a proxy server, edit your \~{}/subversion/servers file to specify
+\textbf{Note:} If you are behind a proxy server, edit your \~{}/subversion/servers file to specify
your proxy settings first!
-/!$\backslash$ \textbf{Note:} In QGIS we keep our most stable code in trunk. Periodically we will tag a release
+\textbf{Note:} In QGIS we keep our most stable code in trunk. Periodically we will tag a release
off trunk, and then continue stabilisation and selective incorporation of new features into trunk.
See the INSTALL file in the source tree for specific instructions on building development versions.
@@ -331,7 +336,7 @@
If you're interested in checking out Quantum GIS documentation sources:
\begin{verbatim}
- svn co https://svn.qgis.org/repos/qgis_docs/trunk qgis_docs
+ svn co https://svn.osgeo.org/qgis/docs/trunk qgis_docs
\end{verbatim}
You can also take a look at DocumentationWritersCorner for more information.
@@ -353,19 +358,23 @@
describes the procedure for branching and merging in the QGIS project.
\subsubsection{Procedure}
- * Initial announcement on mailing list
+
+\begin{itemize}
+\item Initial announcement on mailing list
Before starting, make an announcement on the developer mailing list to see if another developer is
already working on the same feature. Also contact the technical advisor of the project steering committee
(PSC). If the new feature requires any changes to the QGIS architecture, a request for comment (RFC) is needed.
- * Create a branch
+\item Create a branch
Create a new svn branch for the development of the new feature (see UsingSubversion for the svn syntax). Now
you can start developing.
- * Merge from trunk regularly
+\item Merge from trunk regularly
It is recommended to merge the changes in trunk to the branch on a regular basis. This makes it easier to merge
the branch back to trunk later.
- * Documentation on wiki
+\item Documentation on wiki
It is also recommended to document the intended changes and the current status of the work on a wiki page.
- * Testing before merging back to trunk
+\item Testing before merging back to trunk
+\end{itemize}
+
When you are finished with the new feature and happy with the stability, make an announcement on the developer list.
Before merging back, the changes will be tested by developers and users. Binary packages (especially for OsX and Windows)
will be generated to also involve non-developers. In trac, a new Component will be opened to file tickets against.
@@ -376,8 +385,8 @@
stable state. To create a branch use the following command:
\begin{verbatim}
-svn copy https://svn.qgis.org/repos/qgis/trunk/qgis \
-https://svn.qgis.org/repos/qgis/branches/qgis_newfeature
+svn copy https://svn.osgeo.org/qgis/trunk/qgis \
+https://svn.osgeo.org/qgis/branches/qgis_newfeature
svn commit -m "New feature branch"
\end{verbatim}
@@ -389,14 +398,14 @@
\begin{verbatim}
timlinux at timlinux-desktop:~/dev/cpp/qgis_raster_transparency_branch$ svn info
Caminho: .
-URL: https://svn.qgis.org/repos/qgis/branches/raster_transparency_branch
-Raiz do Repositorio: https://svn.qgis.org/repos/qgis
-UUID do repositorio: c8812cc2-4d05-0410-92ff-de0c093fc19c
-Revisao: 6546
+URL: https://svn.osgeo.org/qgis/branches/raster_transparency_branch
+Raiz do Repository: https://svn.osgeo.org/qgis
+UUID do repository: c8812cc2-4d05-0410-92ff-de0c093fc19c
+Revision: 6546
Tipo de No: diretorio
Agendado: normal
Autor da Ultima Mudanca: timlinux
-Revisao da Ultima Mudanca: 6495
+Revision da Ultima Mudanca: 6495
Data da Ultima Mudanca: 2007-02-02 09:29:47 -0200 (Sex, 02 Fev 2007)
Propriedades da Ultima Mudanca: 2007-01-09 11:32:55 -0200 (Ter, 09 Jan 2007)
\end{verbatim}
@@ -405,13 +414,13 @@
current revision. You can do a dry run of the merge like this:
\begin{verbatim}
-svn merge --dry-run -r 6495:6546 https://svn.qgis.org/repos/qgis/trunk/qgis
+svn merge --dry-run -r 6495:6546 https://svn.osgeo.org/qgis/trunk/qgis
\end{verbatim}
After you are happy with the changes that will be made do the merge for real like this:
\begin{verbatim}
-svn merge -r 6495:6546 https://svn.qgis.org/repos/qgis/trunk/qgis
+svn merge -r 6495:6546 https://svn.osgeo.org/qgis/trunk/qgis
svn commit -m "Merged upstream changes from trunk to my branch"
\end{verbatim}
@@ -471,7 +480,7 @@
Checkout the sources:
\begin{verbatim}
-svn co https://svn.qgis.org/repos/qgis/trunk/qgis qgis
+svn co https://svn.osgeo.org/qgis/trunk/qgis qgis
\end{verbatim}
Build the sources (see INSTALL document for proper detailed instructions)
@@ -533,42 +542,40 @@
CTest (a framework for compiling and running tests as part of the CMake build process).
Lets take an overview of the process before I delve into the details:
-\begin{itemize}
-\item \textbf{There is some code you want to test}, e.g. a class or function. Extreme programming
+ * \textbf{There is some code you want to test}, e.g. a class or function. Extreme programming
advocates suggest that the code should not even be written yet when you start
building your tests, and then as you implement your code you can immediately validate
each new functional part you add with your test. In practive you will probably
need to write tests for pre-existing code in QGIS since we are starting with a testing
framework well after much application logic has already been implemented.
-\item \textbf{You create a unit test.} This happens under $<$QGIS Source Dir$>$/tests/src/core
+ * \textbf{You create a unit test.} This happens under $<$QGIS Source Dir$>$/tests/src/core
in the case of the core lib. The test is basically a client that creates an instance
of a class and calls some methods on that class. It will check the return from each
method to make sure it matches the expected value. If any one of the calls fails,
the unit will fail.
-\item \textbf{You include QtTestLib macros in your test class.} This macro is processed by
+ * \textbf{You include QtTestLib macros in your test class.} This macro is processed by
the Qt meta object compiler (moc) and expands your test class into a runnable application.
-\item \textbf{You add a section to the CMakeLists.txt} in your tests directory that will
+ * \textbf{You add a section to the CMakeLists.txt} in your tests directory that will
build your test.
-\item \textbf{You ensure you have ENABLE\_TESTING enabled in ccmake / cmakesetup.} This
+ * \textbf{You ensure you have ENABLE\_TESTING enabled in ccmake / cmakesetup.} This
will ensure your tests actually get compiled when you type make.
-\item \textbf{You optionally add test data to $<$QGIS Source Dir$>$/tests/testdata} if your
+ * \textbf{You optionally add test data to $<$QGIS Source Dir$>$/tests/testdata} if your
test is data driven (e.g. needs to load a shapefile). These test data should be
as small as possible and wherever possible you should use the existing datasets
already there. Your tests should never modify this data in situ, but rather
may a temporary copy somewhere if needed.
-\item \textbf{You compile your sources and install.} Do this using normal make \&\& (sudo)
+ * \textbf{You compile your sources and install.} Do this using normal make \&\& (sudo)
make install procedure.
-\item \textbf{You run your tests.} This is normally done simply by doing \textbf{make test}
+ * \textbf{You run your tests.} This is normally done simply by doing \textbf{make test}
after the make install step, though I will explain other aproaches that offer more
fine grained control over running tests.
-\end{itemize}
Right with that overview in mind, I will delve into a bit of detail. I've already
done much of the configuration for you in CMake and other places in the source tree
@@ -584,8 +591,6 @@
the class itself will be TestQgsRasterLayer. First we add our standard copyright
banner:
-\newpage
-
\begin{verbatim}
/***************************************************************************
testqgsvectorfilewriter.cpp
@@ -774,14 +779,14 @@
#endif
//create some objects that will be used in all tests...
- std::cout << "Prefix PATH: " << QgsApplication::prefixPath().toLocal8Bit().data() \
- << std::endl;
- std::cout << "Plugin PATH: " << QgsApplication::pluginPath().toLocal8Bit().data() \
- << std::endl;
- std::cout << "PkgData PATH: " << QgsApplication::pkgDataPath().toLocal8Bit().data() \
- << std::endl;
- std::cout << "User DB PATH: " << QgsApplication::qgisUserDbFilePath().toLocal8Bit() \
- .data() << std::endl;
+ std::cout << "Prefix PATH: " \
+ << QgsApplication::prefixPath().toLocal8Bit().data() << std::endl;
+ std::cout << "Plugin PATH: " \
+ << QgsApplication::pluginPath().toLocal8Bit().data() << std::endl;
+ std::cout << "PkgData PATH: " \
+ << QgsApplication::pkgDataPath().toLocal8Bit().data() << std::endl;
+ std::cout << "User DB PATH: " \
+ << QgsApplication::qgisUserDbFilePath().toLocal8Bit().data() << std::endl;
//create a raster layer that will be used in all tests...
QString myFileName (TEST_DATA_DIR); //defined in CmakeLists.txt
@@ -1040,8 +1045,8 @@
User DB PATH: /Users/tim/.qgis/qgis.db
QDEBUG : TestQgsApplication::checkTheme() Checking if a theme icon exists:
QDEBUG : TestQgsApplication::checkTheme()
- /Users/tim/dev/cpp/qgis/build/tests/src/core/.. \
- //share/qgis/themes/default//mIconProjectionDisabled.png
+ /Users/tim/dev/cpp/qgis/build/tests/src/core/../\
+ /share/qgis/themes/default//mIconProjectionDisabled.png
FAIL! : TestQgsApplication::checkTheme() '!myPixmap.isNull()' returned FALSE. ()
Loc: [/Users/tim/dev/cpp/qgis/tests/src/core/testqgsapplication.cpp(59)]
PASS : TestQgsApplication::cleanupTestCase()
@@ -1092,4 +1097,3 @@
environment that the user is using.
\end{enumerate}
-
Modified: docs/trunk/english_us/coding-compilation_guide/install.tex
===================================================================
--- docs/trunk/english_us/coding-compilation_guide/install.tex 2009-04-24 02:35:19 UTC (rev 10646)
+++ docs/trunk/english_us/coding-compilation_guide/install.tex 2009-04-24 07:13:17 UTC (rev 10647)
@@ -8,14 +8,15 @@
The following chapters provide build and installation information for QGIS
Version \CURRENT. This document corresponds almost to a \LaTeX~ conversion of
-the INSTALL.t2t file coming with the QGIS sources from December, 16th 2008.
+the INSTALL.t2t file coming with the QGIS sources from April, 24th 2009.
A current version is also available at the wiki, see:
\htmladdnormallink{http://wiki.qgis.org/qgiswiki/BuildingFromSource}{http://wiki.qgis.org/qgiswiki/BuildingFromSource}
-\subsection{General Build Notes}
-At version 0.8.1 QGIS no longer uses the autotools for building. QGIS, like a
-number of major projects (eg. KDE 4.0), now uses cmake (\htmladdnormallink{http://www.cmake.org}{http://www.cmake.org})
+\textbf{General Build Notes}
+
+Since version 0.8.1 QGIS no longer uses the autotools for building. QGIS, like a
+number of major projects (eg. KDE 4.0), now uses CMake (\htmladdnormallink{http://www.cmake.org}{http://www.cmake.org})
for building from source. The configure script in this directory simply checks
for the existence of cmake and provides some clues to build QGIS.
@@ -24,14 +25,14 @@
\subsection{An overview of the dependencies required for building}
-\textbf{Required build deps}:
+\textbf{Required build deps:}
\begin{itemize}
\item CMake $>$= 2.4.3
\item Flex, Bison
\end{itemize}
-\textbf{Required runtime deps}:
+\textbf{Required runtime deps:}
\begin{itemize}
\item Qt $>$= 4.3.0
@@ -41,7 +42,7 @@
\item GDAL/OGR $>$= 1.4.x
\end{itemize}
-\textbf{Optional dependencies}:
+\textbf{Optional dependencies:}
\begin{itemize}
\item for GRASS plugin - GRASS $>$= 6.0.0
@@ -52,13 +53,13 @@
\item for PyQGIS - SIP $>$= 4.5, PyQt $>$= must match Qt version
\end{itemize}
-\textbf{Recommended runtime deps}:
+\textbf{Recommended runtime deps:}
\begin{itemize}
\item for gps plugin - gpsbabel
\end{itemize}
-\section{Building under windows using msys}\label{sec:install_windows}
+\section{Building under windows using msys}
\textbf{Note:} For a detailed account of building all the dependencies yourself you
can visit Marco Pasetti's website here:
@@ -104,7 +105,7 @@
If you plan to do some debugging, you'll need to compile debug version of Qt:
C:$\backslash$Qt$\backslash$4.3.0$\backslash$bin$\backslash$qtvars.bat compile\_debug
-\textbf{Note:} there is a problem when compiling debug version of Qt 4.3, the script ends with
+Note: there is a problem when compiling debug version of Qt 4.3, the script ends with
this message "mingw32-make: *** No rule to make target `debug'. Stop.". To
compile the debug version you have to go out of src directory and execute the
following command:
@@ -114,12 +115,16 @@
\end{verbatim}
\subsection{Flex and Bison}
-\textbf{Note:} I think this section can be removed as it should be installed int the msys image already.
+*** Note I think this section can be removed as it should be installed int the
+msys image already. TS
+
+\begin{verbatim}
Get Flex
+\URL{http://sourceforge.net/project/showfiles.php?group_id=23617&package_id=16424}
+(the zip bin) and extract it into c:\msys\mingw\bin
+\end{verbatim}
-\url{http://sourceforge.net/project/showfiles.php?group\_id=23617&package\_id=16424} (the zip bin) and extract it into c:$\backslash$msys$\backslash$mingw$\backslash$bin
-
\subsection{Python stuff: (optional)}
Follow this section in case you would like to use Python bindings for QGIS. To
be able to compile bindings, you need to compile SIP and PyQt4 from sources as
@@ -131,9 +136,12 @@
\htmladdnormallink{http://python.org/download/}{http://python.org/download/}
\subsubsection{Download SIP and PyQt4 sources}
-\url{http://www.riverbankcomputing.com/software/sip/download} \\
-\url{http://www.riverbankcomputing.com/software/pyqt/download}
+\begin{itemize}
+\item \url{http://www.riverbankcomputing.com/software/sip/download}
+\item \url{http://www.riverbankcomputing.com/software/pyqt/download}
+\end{itemize}
+
Extract each of the above zip files in a temporary directory. Make sure
to get versions that match your current Qt installed version.
@@ -154,8 +162,7 @@
\end{verbatim}
\subsubsection{Final python notes}
-
-\textbf{Note:} You can delete the directories with unpacked SIP and PyQt4 sources after a
+/!$\backslash$ You can delete the directories with unpacked SIP and PyQt4 sources after a
successfull install, they're not needed anymore.
\subsection{Subversion:}
@@ -215,13 +222,17 @@
cmakesetup ..
\end{verbatim}
-\textbf{Note:} You must include the '..' above.
+/!$\backslash$ NOTE: You must include the '..' above.
-Click 'Configure' button. When asked, you should choose 'MinGW Makefiles' as generator.
+Click 'Configure' button. When asked, you should choose 'MinGW Makefiles'
+as generator.
-There's a problem with MinGW Makefiles on Win2K. If you're compiling on this platform, use 'MSYS Makefiles' generator instead.
+There's a problem with MinGW Makefiles on Win2K. If you're compiling on this
+platform, use 'MSYS Makefiles' generator instead.
-All dependencies should be picked up automatically, if you have set up the Paths correctly. The only thing you need to change is the installation destination (CMAKE\_INSTALL\_PREFIX) and/or set 'Debug'.
+All dependencies should be picked up automatically, if you have set up the
+Paths correctly. The only thing you need to change is the installation
+destination (CMAKE\_INSTALL\_PREFIX) and/or set 'Debug'.
For compatibility with NSIS packaging cripts I recommend to leave the
install prefix to its default c:$\backslash$program files$\backslash$
@@ -259,7 +270,7 @@
on qgis.nsi and choose the option 'Compile NSIS Script'.
-\section{Building on Mac OSX using frameworks and cmake (QGIS $>$ 0.8)}\label{sec:install_macosx}
+\section{Building on Mac OSX using frameworks and cmake (QGIS $>$ 0.8)}
In this approach I will try to avoid as much as possible building dependencies
from source and rather use frameworks wherever possible.
@@ -269,7 +280,7 @@
I recommend to get the latest xcode dmg from the Apple XDC Web site. Install
XCODE after the \~{}941mb download is complete.
-\textbf{Note:} It may be that you need to create some symlinks after installing
+/!$\backslash$ Note: It may be that you need to create some symlinks after installing
the XCODE SDK (in particular if you are using XCODE 2.5 on tiger):
\begin{verbatim}
@@ -293,16 +304,15 @@
I am going to proceed using only release libs at this stage as the download for
the debug dmg is substantially bigger. If you plan to do any debugging though
-you probably want to get the debug libs dmg. Once downloaded open the dmg and run the installer.
+you probably want to get the debug libs dmg. Once downloaded open the dmg and
+run the installer. Note you need admin access to install.
-\textbf{Note:} you need admin access to install.
-
After installing you need to make two small changes:
First edit \texttt{/Library/Frameworks/QtCore.framework/Headers/qconfig.h} and
change
-\textbf{Note:} this doesnt seem to be needed since version 4.2.3
+/!$\backslash$ Note this doesnt seem to be needed since version 4.2.3
\texttt{QT\_EDITION\_Unknown} to \texttt{QT\_EDITION\_OPENSOURCE}
@@ -379,7 +389,9 @@
Retrieve the python bindings toolkit SIP from
-\url{http://www.riverbankcomputing.com/software/sip/download}
+\begin{verbatim}
+http://www.riverbankcomputing.com/software/sip/download
+\end{verbatim}
Then extract and build it (this installs by default into the Python framework):
@@ -397,8 +409,8 @@
If building on Leopard, using Leopard's bundled Python, SIP wants to install in the system path -- this is not a good idea. Use this configure command instead of the basic configure above:
\begin{verbatim}
-python configure.py -d /Library/Python/2.5/site-packages -b \
-/usr/local/bin -e /usr/local/include -v /usr/local/share/sip
+python configure.py -d /Library/Python/2.5/site-packages -b /usr/local/bin \
+-e /usr/local/include -v /usr/local/share/sip
\end{verbatim}
\subsubsection{Additional Dependencies : PyQt}
@@ -478,7 +490,7 @@
\subsection{Install subversion for OSX}
\underline{Leopard note:} Leopard includes SVN, so this step can be skipped on Leopard.
-The \url{http://sourceforge.net/projects/macsvn/} project has a downloadable
+The \htmladdnormallink{http://sourceforge.net/projects/macsvn/}{MacSVN} project has a downloadable
build of svn. If you are a GUI inclined person you may want to grab their gui
client too. Get the command line client here:
@@ -489,15 +501,18 @@
Once downloaded open the zip file and run the installer.
You also need to install BerkleyDB available from the same
-\url{http://sourceforge.net/projects/macsvn/}. At the time of writing the file was here:
+\htmladdnormallink{http://sourceforge.net/projects/macsvn/}{website}. At the time of writing the
+file was here:
\begin{verbatim}
curl -O http://ufpr.dl.sourceforge.net/sourceforge/macsvn/Berkeley_DB_4.5.20.zip
\end{verbatim}
-Once again unzip this and run the installer therein. Lastly we need to ensure that the svn commandline executeable is in the path. Add the following line to the end of /etc/bashrc using
-sudo:
+Once again unzip this and run the installer therein.
+Lastly we need to ensure that the svn commandline executeable is in the path.
+Add the following line to the end of /etc/bashrc using sudo:
+
\begin{verbatim}
sudo vim /etc/bashrc
\end{verbatim}
@@ -508,7 +523,9 @@
export PATH=/usr/local/bin:$PATH:/usr/local/pgsql/bin
\end{verbatim}
-/usr/local/bin needs to be first in the path so that the newer bison (that will be built from source further down) is found before the bison (which is very old) that is installed by MacOSX.
+/usr/local/bin needs to be first in the path so that the newer bison (that will
+be built from source further down) is found before the bison (which is very
+old) that is installed by MacOSX
Now close and reopen your shell to get the updated vars.
@@ -617,7 +634,8 @@
make install
\end{verbatim}
-\section{Building on GNU/Linux}\label{sec:install_linux}
+
+\section{Building on GNU/Linux}
\subsection{Building QGIS with Qt4.x}
\textbf{Requires:} Ubuntu Hardy / Debian derived distro
@@ -658,7 +676,7 @@
qt4-dev-tools qt4-doc qt4-qtconfig uim-qt gcc libapt-pkg-perl resolvconf
\end{verbatim}
-\textbf{A Special Note:} If you are following this set of instructions on
+/!$\backslash$ \textbf{*A Special Note:*} If you are following this set of instructions on
a system where you already have Qt3 development tools installed, there will
be a conflict between Qt3 tools and Qt4 tools. For example, qmake will
point to the Qt3 version not the Qt4. Ubuntu Qt4 and Qt3 packages are
@@ -703,9 +721,9 @@
python-qt4 python-qt4-dev python-sip4 sip4 python-sip4-dev
\end{verbatim}
-\textbf{Note:} Debian users should use libgdal-dev above rather
+/!$\backslash$ Debian users should use libgdal-dev above rather
-\textbf{Note:} For python language bindings SIP $>$= 4.5 and PyQt4 $>$= 4.1 is required! Some stable GNU/Linux
+/!$\backslash$ \textbf{*Note:*} For python language bindings SIP $>$= 4.5 and PyQt4 $>$= 4.1 is required! Some stable GNU/Linux
distributions (e.g. Debian or SuSE) only provide SIP $<$ 4.5 and PyQt4 $<$ 4.1. To include support for python
language bindings you may need to build and install those packages from source.
@@ -716,7 +734,7 @@
\end{verbatim}
\subsection{GRASS Specific Steps}
-\textbf{Note:} If you don't need to build with GRASS support, you can
+/!$\backslash$ \textbf{*Note:*} If you don't need to build with GRASS support, you can
skip this section.
Now you can install grass from dapper:
@@ -785,7 +803,7 @@
\end{verbatim}
\subsection{Starting the compile}
-\textbf{Note:} The next section describes howto build debian packages
+/!$\backslash$ \textbf{*Note:*} The next section describes howto build debian packages
I compile my development version of QGIS into my \~{}/apps directory to avoid
conflicts with Ubuntu packages that may be under /usr. This way for example
@@ -811,7 +829,7 @@
packagemanager for example), set the CMAKE\_BUILD\_PREFIX to somewhere you
have write access to (I usually use /home/timlinux/apps). Now press
'c' to configure, 'e' to dismiss any error messages that may appear.
-and 'g' to generate the make files. \textbf{Note:} that sometimes 'c' needs to
+and 'g' to generate the make files. Note that sometimes 'c' needs to
be pressed several times before the 'g' option becomes available.
After the 'g' generation is complete, press 'q' to exit the ccmake
interactive dialog.
@@ -842,10 +860,10 @@
dpkg-buildpackage -us -us -b
\end{verbatim}
-\textbf{Note:} If \texttt{dpkg-buildpackage} complains about unmet build dependencies
+/!$\backslash$ \textbf{*Note:*} If \texttt{dpkg-buildpackage} complains about unmet build dependencies
you can install them using \texttt{apt-get} and re-run the command.
-\textbf{Note:} If you have \texttt{libqgis1-dev} installed, you need to remove it first
+/!$\backslash$ \textbf{*Note:*} If you have \texttt{libqgis1-dev} installed, you need to remove it first
using \texttt{dpkg -r libqgis1-dev}. Otherwise \texttt{dpkg-buildpackage} will complain about a
build conflict.
@@ -880,7 +898,9 @@
Download from here:
-\url{http://puzzle.dl.sourceforge.net/sourceforge/mingw/MSYS-1.0.11-2004.04.30-1.exe}
+ \begin{quotation}
+\htmladdnormallink{http://puzzle.dl.sourceforge.net/sourceforge/mingw/MSYS-1.0.11-2004.04.30-1.exe}{http://puzzle.dl.sourceforge.net/sourceforge/mingw/MSYS-1.0.11-2004.04.30-1.exe}
+ \end{quotation}
Install to \texttt{c:$\backslash$msys}
@@ -889,7 +909,9 @@
\subsubsection{MinGW}
Download from here:
-\url{http://puzzle.dl.sourceforge.net/sourceforge/mingw/MinGW-5.1.3.exe}
+ \begin{quotation}
+\htmladdnormallink{http://puzzle.dl.sourceforge.net/sourceforge/mingw/MinGW-5.1.3.exe}{http://puzzle.dl.sourceforge.net/sourceforge/mingw/MinGW-5.1.3.exe}
+ \end{quotation}
Install to \texttt{c:$\backslash$msys$\backslash$mingw}
@@ -900,11 +922,17 @@
Download the following packages:
-\url{http://gnuwin32.sourceforge.net/downlinks/flex-bin-zip.php}
+ \begin{quotation}
+\htmladdnormallink{http://gnuwin32.sourceforge.net/downlinks/flex-bin-zip.php}{http://gnuwin32.sourceforge.net/downlinks/flex-bin-zip.php}
+ \end{quotation}
-\url{http://gnuwin32.sourceforge.net/downlinks/bison-bin-zip.php}
+ \begin{quotation}
+\htmladdnormallink{http://gnuwin32.sourceforge.net/downlinks/bison-bin-zip.php}{http://gnuwin32.sourceforge.net/downlinks/bison-bin-zip.php}
+ \end{quotation}
-\url{http://gnuwin32.sourceforge.net/downlinks/bison-dep-zip.php}
+ \begin{quotation}
+\htmladdnormallink{http://gnuwin32.sourceforge.net/downlinks/bison-dep-zip.php}{http://gnuwin32.sourceforge.net/downlinks/bison-dep-zip.php}
+ \end{quotation}
Unpack them all to \texttt{c:$\backslash$msys$\backslash$local}
@@ -926,11 +954,15 @@
It's available for download here:
-\url{http://www.stjohnspoint.co.uk/grass/wingrass-extralibs.tar.gz}
+ \begin{quotation}
+\htmladdnormallink{http://www.stjohnspoint.co.uk/grass/wingrass-extralibs.tar.gz}{http://www.stjohnspoint.co.uk/grass/wingrass-extralibs.tar.gz}
+ \end{quotation}
Moreover he also left the notes how to compile it (for those interested):
-\url{http://www.stjohnspoint.co.uk/grass/README.extralibs}
+ \begin{quotation}
+\htmladdnormallink{http://www.stjohnspoint.co.uk/grass/README.extralibs}{http://www.stjohnspoint.co.uk/grass/README.extralibs}
+ \end{quotation}
Unpack the whole package to \texttt{c:$\backslash$msys$\backslash$local}
@@ -947,7 +979,9 @@
So, start with downloading GDAL sources:
-\url{http://download.osgeo.org/gdal/gdal141.zip}
+ \begin{quotation}
+\htmladdnormallink{http://download.osgeo.org/gdal/gdal141.zip}{http://download.osgeo.org/gdal/gdal141.zip}
+ \end{quotation}
Unpack it to some directory, preferably \texttt{c:$\backslash$msys$\backslash$local$\backslash$src}.
@@ -964,17 +998,19 @@
make
make install
rm /usr/local/lib/libgdal.a
-g++ -s -shared -o ./libgdal.dll -L/usr/local/lib -lz -lpng ./frmts/o/*.o ./gcore/*.o \
-./port/*.o ./alg/*.o ./ogr/ogrsf_frmts/o/*.o ./ogr/ogrgeometryfactory.o \
-./ogr/ogrpoint.o ./ogr/ogrcurve.o ./ogr/ogrlinestring.o ./ogr/ogrlinearring.o \
-./ogr/ogrpolygon.o ./ogr/ogrutils.o ./ogr/ogrgeometry.o ./ogr/ogrgeometrycollection.o \
+g++ -s -shared -o ./libgdal.dll -L/usr/local/lib -lz -lpng ./frmts/o/*.o \
+./gcore/*.o ./port/*.o ./alg/*.o ./ogr/ogrsf_frmts/o/*.o \
+./ogr/ogrgeometryfactory.o ./ogr/ogrpoint.o ./ogr/ogrcurve.o \
+./ogr/ogrlinestring.o ./ogr/ogrlinearring.o ./ogr/ogrpolygon.o \
+./ogr/ogrutils.o ./ogr/ogrgeometry.o ./ogr/ogrgeometrycollection.o \
./ogr/ogrmultipolygon.o ./ogr/ogrsurface.o ./ogr/ogrmultipoint.o \
-./ogr/ogrmultilinestring.o ./ogr/ogr_api.o ./ogr/ogrfeature.o ./ogr/ogrfeaturedefn.o \
-./ogr/ogrfeaturequery.o ./ogr/ogrfeaturestyle.o ./ogr/ogrfielddefn.o \
-./ogr/ogrspatialreference.o ./ogr/ogr_srsnode.o ./ogr/ogr_srs_proj4.o \
-./ogr/ogr_fromepsg.o ./ogr/ogrct.o ./ogr/ogr_opt.o ./ogr/ogr_srs_esri.o \
-./ogr/ogr_srs_pci.o ./ogr/ogr_srs_usgs.o ./ogr/ogr_srs_dict.o ./ogr/ogr_srs_panorama.o \
-./ogr/swq.o ./ogr/ogr_srs_validate.o ./ogr/ogr_srs_xml.o ./ogr/ograssemblepolygon.o \
+./ogr/ogrmultilinestring.o ./ogr/ogr_api.o ./ogr/ogrfeature.o \
+./ogr/ogrfeaturedefn.o ./ogr/ogrfeaturequery.o ./ogr/ogrfeaturestyle.o \
+./ogr/ogrfielddefn.o ./ogr/ogrspatialreference.o \
+./ogr/ogr_srsnode.o ./ogr/ogr_srs_proj4.o ./ogr/ogr_fromepsg.o ./ogr/ogrct.o \
+./ogr/ogr_opt.o ./ogr/ogr_srs_esri.o ./ogr/ogr_srs_pci.o ./ogr/ogr_srs_usgs.o \
+./ogr/ogr_srs_dict.o ./ogr/ogr_srs_panorama.o ./ogr/swq.o \
+./ogr/ogr_srs_validate.o ./ogr/ogr_srs_xml.o ./ogr/ograssemblepolygon.o \
./ogr/ogr2gmlgeometry.o ./ogr/gml2ogrgeometry.o
install libgdal.dll /usr/local/lib
cd ogr
@@ -1027,11 +1063,11 @@
\begin{verbatim}
export PATH="/usr/local/bin:/usr/local/lib:$PATH"
./configure --prefix=/usr/local --bindir=/usr/local --with-includes=/usr/local/include \
---with-libs=/usr/local/lib --with-cxx --without-jpeg --without-tiff --with-postgres=yes \
---with-postgres-includes=/local/pgsql/include --with-pgsql-libs=/local/pgsql/lib \
+--with-libs=/usr/local/lib --with-cxx --without-jpeg --without-tiff \
+--with-postgres=yes \ --with-postgres-includes=/local/pgsql/include \
+--with-pgsql-libs=/local/pgsql/lib \
--with-opengl=windows --with-fftw --with-freetype \
---with-freetype-includes=/mingw/include/freetype2 \
---without-x --without-tcltk \
+--with-freetype-includes=/mingw/include/freetype2 --without-x --without-tcltk \
--enable-x11=no --enable-shared=yes --with-proj-share=/usr/local/share/proj
make
make install
@@ -1042,8 +1078,8 @@
By the way, these pages might be useful:
\begin{itemize}
-\item \htmladdnormallink{http://grass.gdf-hannover.de/wiki/WinGRASS\_Current\_Status}{http://grass.gdf-hannover.de/wiki/WinGRASS\_Current\_Status}
-\item \htmladdnormallink{http://geni.ath.cx/grass.html}{http://geni.ath.cx/grass.html}
+\item \url{http://grass.osgeo.org/wiki/WinGRASS\_Current\_Status}
+\item \url{http://geni.ath.cx/grass.html}
\end{itemize}
\subsubsection{GDAL level two}
@@ -1058,16 +1094,11 @@
Now in MSYS console go to the GDAL sources directory and run the same commands as in level one, only with these differences:
-\begin{verbatim}
-1) when running ./configure add this argument:
---with-grass=/usr/local/grass-6.3.cvs
+\begin{enumerate}
+\item when running \texttt{./configure} add this argument: \texttt{--with-grass=/usr/local/grass-6.3.cvs}
+\item when calling \texttt{g++} on line 5 (which creates libgdal.dll), add these arguments: \texttt{-L/usr/local/grass-6.3.cvs/lib -lgrass\_vect -lgrass\_dig2 -lgrass\_dgl -lgrass\_rtree -lgrass\_linkm -lgrass\_dbmiclient -lgrass\_dbmibase -lgrass\_I -lgrass\_gproj -lgrass\_vask -lgrass\_gmath -lgrass\_gis -lgrass\_datetime}
+\end{enumerate}
-2) when calling g++ on line 5 (which creates libgdal.dll), add these arguments:
--L/usr/local/grass-6.3.cvs/lib -lgrass\_vect -lgrass\_dig2 -lgrass\_dgl -lgrass\_rtree \
--lgrass\_linkm -lgrass\_dbmiclient -lgrass\_dbmibase -lgrass\_I -lgrass\_gproj \
--lgrass\_vask -lgrass\_gmath -lgrass\_gis -lgrass\_datetime}
-\end{verbatim}
-
Then again, edit \texttt{gdal-config} and change line with CONFIG\_LIBS
\begin{verbatim}
@@ -1082,7 +1113,9 @@
\subsubsection{GEOS}
Download the sources:
-\url{http://geos.refractions.net/geos-2.2.3.tar.bz2}
+ \begin{quotation}
+\htmladdnormallink{http://geos.refractions.net/geos-2.2.3.tar.bz2}{http://geos.refractions.net/geos-2.2.3.tar.bz2}
+ \end{quotation}
Unpack to e.g. \texttt{c:$\backslash$msys$\backslash$local$\backslash$src}
@@ -1111,21 +1144,26 @@
Download this archive:
+ \begin{quotation}
+\htmladdnormallink{http://www.sqlite.org/sqlitedll-3\_3\_17.zip}{http://www.sqlite.org/sqlitedll-3\_3\_17.zip}
+ \end{quotation}
-\url{http://www.sqlite.org/sqlitedll-3\_3\_17.zip}
-
and copy sqlite3.dll from it to \texttt{c:$\backslash$msys$\backslash$local$\backslash$lib}
Then download this archive:
-\url{http://www.sqlite.org/sqlite-source-3\_3\_17.zip}
+ \begin{quotation}
+\htmladdnormallink{http://www.sqlite.org/sqlite-source-3\_3\_17.zip}{http://www.sqlite.org/sqlite-source-3\_3\_17.zip}
+ \end{quotation}
and copy sqlite3.h to \texttt{c:$\backslash$msys$\backslash$local$\backslash$include}
\subsubsection{GSL}
Download sources:
-\url{ftp://ftp.gnu.org/gnu/gsl/gsl-1.9.tar.gz}
+ \begin{quotation}
+\htmladdnormallink{ftp://ftp.gnu.org/gnu/gsl/gsl-1.9.tar.gz}{ftp://ftp.gnu.org/gnu/gsl/gsl-1.9.tar.gz}
+ \end{quotation}
Unpack to \texttt{c:$\backslash$msys$\backslash$local$\backslash$src}
@@ -1140,7 +1178,9 @@
\subsubsection{EXPAT}
Download sources:
-\url{http://dfn.dl.sourceforge.net/sourceforge/expat/expat-2.0.0.tar.gz}
+ \begin{quotation}
+\htmladdnormallink{http://dfn.dl.sourceforge.net/sourceforge/expat/expat-2.0.0.tar.gz}{http://dfn.dl.sourceforge.net/sourceforge/expat/expat-2.0.0.tar.gz}
+ \end{quotation}
Unpack to \texttt{c:$\backslash$msys$\backslash$local$\backslash$src}
@@ -1156,8 +1196,8 @@
We're going to use precompiled binaries. Use the link below for download:
\begin{verbatim}
-http://wwwmaster.postgresql.org/download/mirrors-ftp?file=\%2Fbinary\%2Fv8.2.4\%2Fwin32 \
-\%2Fpostgresql-8.2.4-1-binaries-no-installer.zip
+http://wwwmaster.postgresql.org/download/mirrors-ftp?file=%2Fbinary%2Fv8.2.4%2Fwin32%2\
+Fpostgresql-8.2.4-1-binaries-no-installer.zip}
\end{verbatim}
copy contents of pgsql directory from the archive to \texttt{c:$\backslash$msys$\backslash$local}
@@ -1172,7 +1212,7 @@
after this for a simpler procedure where we have all the dependencies you need pre-packaged
and we focus just on getting Visual Studio Express set up and building QGIS.
-\textbf{Note:} that this does not currently include GRASS or Python plugins.
+Note that this does not currently include GRASS or Python plugins.
\subsection{Setup Visual Studio}
This section describes the setup required to allow Visual Studio to be used to build QGIS.
@@ -1180,25 +1220,27 @@
\subsubsection{Express Edition}
The free Express Edition lacks the platform SDK which contains headers and so on that are needed when building QGIS. The platform SDK can be installed as described here:
-
-\url{http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/}
-
+ \begin{quotation}
+\htmladdnormallink{http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/}{http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/}
+ \end{quotation}
Once this is done, you will need to edit the $<$vsinstalldir$>$$\backslash$Common7$\backslash$Tools$\backslash$vsvars file as follows:
\begin{quotation}
Add \texttt{\%PlatformSDKDir\%$\backslash$Include$\backslash$atl} and \texttt{\%PlatformSDKDir\%$\backslash$Include$\backslash$mfc} to the \texttt{@set INCLUDE} entry.
\end{quotation}
-This will add more headers to the system INCLUDE path. \textbf{Note:} that this will only work when you use the Visual Studio command prompt when building. Most of the dependencies will be built with this.
+This will add more headers to the system INCLUDE path. Note that this will only work when you use the Visual Studio command prompt when building. Most of the dependencies will be built with this.
You will also need to perform the edits described here to remove the need for a library that Visual Studio Express lacks:
-\url{http://www.codeproject.com/wtl/WTLExpress.asp}
+ \begin{quotation}
+\htmladdnormallink{http://www.codeproject.com/wtl/WTLExpress.asp}{http://www.codeproject.com/wtl/WTLExpress.asp}
+ \end{quotation}
-
\subsubsection{All Editions}
You will need stdint.h and unistd.h. unistd.h comes with GnuWin32 version of flex \& bison binaries (see later). stdint.h can be found here:
-\url{http://www.azillionmonkeys.com/qed/pstdint.h}
-
+ \begin{quotation}
+\htmladdnormallink{http://www.azillionmonkeys.com/qed/pstdint.h}{http://www.azillionmonkeys.com/qed/pstdint.h}.
+ \end{quotation}
Copy both of these to $<$vsinstalldir$>$$\backslash$VC$\backslash$include.
\subsection{Download/Install Dependencies}
@@ -1209,9 +1251,14 @@
Download the following packages and run the installers:
-\url{http://gnuwin32.sourceforge.net/downlinks/flex.php} \\
-\url{http://gnuwin32.sourceforge.net/downlinks/bison.php}
+ \begin{quotation}
+\htmladdnormallink{http://gnuwin32.sourceforge.net/downlinks/flex.php}{http://gnuwin32.sourceforge.net/downlinks/flex.php}
+ \end{quotation}
+ \begin{quotation}
+\htmladdnormallink{http://gnuwin32.sourceforge.net/downlinks/bison.php}{http://gnuwin32.sourceforge.net/downlinks/bison.php}
+ \end{quotation}
+
\subsubsection{To include PostgreSQL support in Qt}
If you want to build Qt with PostgreSQL support you need to download
PostgreSQL, install it and create a library you can later link with Qt.
@@ -1251,18 +1298,22 @@
You'll need an sed for that to work in your path (e.g. from cygwin or msys).
-That's almost it. You only need to the include and lib path to INCLUDE and LIB in vcvars.bat respectively.
+That's almost it. You only need to the include and lib path to INCLUDE and LIB
+in vcvars.bat respectively.
\subsubsection{Qt}
Build Qt following the instructions here:
-\url{http://wiki.qgis.org/qgiswiki/Building\_QT\_4\_with\_Visual\_C\%2B\%2B\_2005}
+\begin{verbatim}
+http://wiki.qgis.org/qgiswiki/Building\_QT\_4\_with\_Visual\_C%2B%2B\_2005}
+\end{verbatim}
\subsubsection{Proj.4}
Get proj.4 source from here:
-\url{http://proj.maptools.org/}
-
+ \begin{quotation}
+\htmladdnormallink{http://proj.maptools.org/}{http://proj.maptools.org/}
+ \end{quotation}
Using the Visual Studio command prompt (ensures the environment is setup properly), run the following in the src directory:
\begin{verbatim}
@@ -1289,8 +1340,9 @@
\subsubsection{GSL}
Get gsl source from here:
-\url{http://david.geldreich.free.fr/downloads/gsl-1.9-windows-sources.zip}
-
+ \begin{quotation}
+\htmladdnormallink{http://david.geldreich.free.fr/downloads/gsl-1.9-windows-sources.zip}{http://david.geldreich.free.fr/downloads/gsl-1.9-windows-sources.zip}
+ \end{quotation}
Build using the gsl.sln file
\subsubsection{GEOS}
@@ -1346,15 +1398,17 @@
\subsubsection{PostGIS}
Get PostGIS and the Windows version of PostgreSQL from here:
-\url{http://postgis.refractions.net/download/}
+ \begin{quotation}
+\htmladdnormallink{http://postgis.refractions.net/download/}{http://postgis.refractions.net/download/}
+ \end{quotation}
+Note the warning about not installing the version of PostGIS that comes with the PostgreSQL installer. Simply run the installers.
-\textbf{Note:} the warning about not installing the version of PostGIS that comes with the PostgreSQL installer. Simply run the installers.
-
\subsubsection{Expat}
Get expat from here:
-\url{http://sourceforge.net/project/showfiles.php?group\_id=10127}
-
+ \begin{quotation}
+\htmladdnormallink{http://sourceforge.net/project/showfiles.php?group\_id=10127}{http://sourceforge.net/project/showfiles.php?group\_id=10127}
+ \end{quotation}
You'll need expat-win32bin-2.0.1.exe.
Simply run the executable to install expat.
@@ -1362,9 +1416,9 @@
\subsubsection{CMake}
Get CMake from here:
-
-\url{http://www.cmake.org/HTML/Download.html}
-
+ \begin{quotation}
+\htmladdnormallink{http://www.cmake.org/HTML/Download.html}{http://www.cmake.org/HTML/Download.html}
+ \end{quotation}
You'll need cmake-$<$version$>$-win32-x86.exe. Simply run this to install CMake.
\subsection{Building QGIS with CMAKE}
@@ -1394,10 +1448,13 @@
You will also either need to add all the dependency dlls to the QGIS install directory or add their respective directories to your PATH.
+
\section{Building under Windows using MSVC Express}
-\textbf{Note:}: Building under MSVC is still a work in progress. In particular the following dont work yet: python, grass, postgis connections.
+/!$\backslash$ Note: Building under MSVC is still a work in progress. In particular the
+following dont work yet: python, grass, postgis connections.
-/!$\backslash$ This section of the document is in draft form and is not ready to be used yet.
+/!$\backslash$ This section of the document is in draft form and is not ready to be used
+yet.
Tim Sutton, 2007
@@ -1444,7 +1501,7 @@
c:\dev\cpp\qgislibs-release
\end{verbatim}
-\textbf{Note:} that you are not obliged to use this directory layout, but you
+/!$\backslash$ Note that you are not obliged to use this directory layout, but you
should adjust any instructions that follow if you plan to do things
differently.
@@ -1544,9 +1601,9 @@
Debuggin Tools for Windows (Yes)
\end{verbatim}
-\textbf{Note:} that you can always come back later to add extra bits if you like.
+/!$\backslash$ Note that you can always come back later to add extra bits if you like.
-\textbf{Note:} that installing the SDK requires validation with the
+/!$\backslash$ Note that installing the SDK requires validation with the
Microsoft Genuine Advantage application. Some people have a philosophical
objection to installing this software on their computers. If you are one
of them you should probably consider using the MINGW build instructions
@@ -1632,24 +1689,25 @@
@set DevEnvDir=C:\Program Files\Microsoft Visual Studio 8\Common7\IDE
@set PATH=C:\Program Files\Microsoft Visual Studio 8\Common7\IDE;C:\Program \
-Files\Microsoft Visual Studio 8\VC\BIN;C:\Program Files\Microsoft Visual Studio 8\ \
-Common7\Tools;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\bin; \
-C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program Files\Microsoft Visual \
-Studio 8\VC\VCPackages;%PATH%
+Files\Microsoft Visual Studio 8\VC\BIN;C:\Program Files\Microsoft \
+Visual Studio 8\Common7\Tools;C:\Program Files\Microsoft Visual Studio \
+8\SDK\v2.0\bin;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program \
+Files\Microsoft Visual Studio 8\VC\VCPackages;%PATH%
@rem added by Tim
- at set PATH=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin;%PATH%
- at set INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE; \
-%INCLUDE%
+ at set PATH=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 \
+R2\Bin;%PATH%
+ at set INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;%INCLUDE%
@rem added by Tim
- at set INCLUDE=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\ \
-Include;%INCLUDE%
- at set INCLUDE=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\ \
-Include\mfc;%INCLUDE%
+ at set INCLUDE=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 \
+R2\Include;%INCLUDE%
+ at set INCLUDE=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 \
+R2\Include\mfc;%INCLUDE%
@set INCLUDE=%INCLUDE%;C:\dev\cpp\qgislibs-release\include\postgresql
- at set LIB=C:\Program Files\Microsoft Visual Studio 8\ \
-VC\LIB;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;%LIB%
+ at set LIB=C:\Program Files\Microsoft Visual Studio 8\VC\LIB;C:\Program \
+Files\Microsoft Visual Studio 8\SDK\v2.0\lib;%LIB%
@rem added by Tim
- at set LIB=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib;%LIB%
+ at set LIB=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 \
+R2\Lib;%LIB%
@set LIB=%LIB%;C:\dev\cpp\qgislibs-release\lib
@set LIBPATH=C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
@@ -1675,21 +1733,21 @@
Variable Name: Value:
--------------------------------------------------------------------------
EDITOR vim
-INCLUDE C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2 \
-\Include\.
-LIB C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2 \
-\Lib\.
+INCLUDE C:\Program Files\Microsoft Platform SDK for Windows Server \
+ 2003 R2\Include\.
+LIB C:\Program Files\Microsoft Platform SDK for Windows Server \
+ 2003 R2\Lib\.
LIB_DIR C:\dev\cpp\qgislibs-release
PATH C:\Program Files\CMake 2.4\bin;
%SystemRoot%\system32;
%SystemRoot%;
%SystemRoot%\System32\Wbem;
- C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2 \
- \Bin\.;
- C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\ \
- \Bin\WinNT\;
- C:\Program Files\svn\bin;C:\Program Files\Microsoft Visual Studio 8 \
- \VC\bin;
+ C:\Program Files\Microsoft Platform SDK for Windows Server \
+ 2003 R2\Bin\.;
+ C:\Program Files\Microsoft Platform SDK for Windows Server \
+ 2003 R2\Bin\WinNT\;
+ C:\Program Files\svn\bin;C:\Program Files\Microsoft Visual \
+ Studio 8\VC\bin;
C:\Program Files\Microsoft Visual Studio 8\Common7\IDE;
"c:\Program Files\Microsoft Visual Studio 8\Common7\Tools";
c:\Qt\4.3.2\bin;
@@ -1727,7 +1785,7 @@
Add -qt-sql-odbc -qt-sql-psql to the configure line if your want odbc and
PostgreSQL support build into Qt.
-\textbf{Note:} For me in some cases I got a build error on qscreenshot.pro. If you
+/!$\backslash$ Note: For me in some cases I got a build error on qscreenshot.pro. If you
are only interested in having the libraries needed for building Qt apps, you
can probably ignore that. Just check in c:$\backslash$Qt$\backslash$4.3.2$\backslash$bin to check all dlls and
helper apps (assistant etc) have been made.
@@ -1806,8 +1864,13 @@
\end{verbatim}
\subsection{Install CMake}
-Download and install cmake 2.4.7 or better, making sure to enable the option: \texttt{Update path for all users}
+Download and install cmake 2.4.7 or better, making sure to enable the
+option
+\begin{verbatim}
+Update path for all users
+\end{verbatim}
+
\subsection{Install Subversion}
You '''must''' install the command line version if you want the CMake svn scripts to work.
Its a bit tricky to find the correct version on the subversion download site as they have
@@ -1816,6 +1879,7 @@
\htmladdnormallink{http://subversion.tigris.org/downloads/1.4.5-win32/apache-2.2/svn-win32-1.4.5.zip}{http://subversion.tigris.org/downloads/1.4.5-win32/apache-2.2/svn-win32-1.4.5.zip}
Extract the zip file to
+
\begin{verbatim}
C:\Program Files\svn
\end{verbatim}
@@ -1875,8 +1939,10 @@
fields are gone, and you have made any personalisations to the setup, press
ok to close the cmake gui.
-Now open Visual Studio Express and do: \texttt{File -$>$ Open -$>$ Project / Solution}
+Now open Visual Studio Express and do:
+File -$>$ Open -$>$ Project / Solution
+
Now open the cmake generated QGIS solution which should be in :
\begin{verbatim}
@@ -1886,11 +1952,14 @@
Where X.X.X represents the current version number of QGIS. Currently I
have only made release built dependencies for QGIS (debug versions will follow
in future), so you need to be sure to select 'Release' from the solution
-configurations toolbar. Next right click on ALL\_BUILD in the solution browser, and then choose build. Once the build completes right click on INSTALL in the solution browser and
+configurations toolbar.
+
+Next right click on ALL\_BUILD in the solution browser, and then choose build.
+
+Once the build completes right click on INSTALL in the solution browser and
choose build. This will by default install qgis into c:$\backslash$program files$\backslash$qgisX.X.X.
\subsection{Running and packaging}
To run QGIS you need to at the minimum copy the dlls from c:$\backslash$dev$\backslash$cpp$\backslash$qgislibs-release$\backslash$bin
into the c:$\backslash$program files$\backslash$qgisX.X.X directory.
-
Added: docs/trunk/english_us/coding-compilation_guide/introduction.tex
===================================================================
--- docs/trunk/english_us/coding-compilation_guide/introduction.tex (rev 0)
+++ docs/trunk/english_us/coding-compilation_guide/introduction.tex 2009-04-24 07:13:17 UTC (rev 10647)
@@ -0,0 +1,12 @@
+% vim: set textwidth=78 autoindent:
+
+\section{Introduction}\label{label_forward}
+\pagenumbering{arabic}
+\setcounter{page}{1}
+
+% when the revision of a section has been finalized,
+% comment out the following line:
+\updatedisclaimer
+
+Here we need an introduction :)
+
More information about the QGIS-commit
mailing list