]> git.lyx.org Git - lyx.git/blobdiff - INSTALL.Win32
Add to credits
[lyx.git] / INSTALL.Win32
index f69387b2a7ac9c52e4c0bbedb8ed7a91313f3d3d..769f9e9f4d869c3e9466ee24045f699e94a2fb4b 100644 (file)
-=================
-INSTALL for Win32
-=================
+Compiling LyX 2.0 for Win32
+===========================
 
-LyX can be built with either MinGW/MSYS or Microsoft Visual Studio. The
-instructions below describe the detailed steps needed to set up a MinGW/MSYS
-environment ready to compile LyX. Several of these steps (installation of the
-third-party libraries) need to be performed for a MSVS build also but, of
-course, the details of how to do so are different. Nonetheless, we hope that
-the description below provides the MSVS developer with enough info to get
-started.
+LyX 2.0 can be compiled with Microsoft Visual C++ 2008 (recommended) or MinGW.
+Note that you should not have spaces in the path of the source code.
 
-Building LyX the first time can appear to be a daunting task but much of that
-is knowing which packages to download in the first place. Once you've set up
-the build environment, actually building LyX should be straightforward. 
+Compiling with MSVC 2008
+========================
 
-The instructions below should guide you through the installation of the 
-MinGW/MSYS build environment, together with details on how to grab and build
-gettext, libiconv, qtwin, and aspell.
+1      Install MSVC 2008
 
-Once you've done all that, you should go read the README in 
-development/Win32/packaging/ (MSVS users just open up development/Win32/lyx.sln
-and click Build) The two scripts in the same directory, build_lyxwin.sh and
-package_lyxwin.sh should automate the entire build process. If not and you
-really can't figure out what to do next, then please, please drop a mail to
-lyx-devel@lists.lyx.org.
+       If you don't have MSVC 2008 installed, download and install the free
+       Express edition from http://www.microsoft.com/express/vc/
 
-Enjoy!
-The LyX Team
+2      Install Python
 
-=============================================================================
+       Get the latest Python 2.6 version at
+       http://www.python.org/download/
 
-1 MinGW & MSYS
+       Install in C:\Python26 and add this directory to the PATH environment
+       variable (Start > Settings > Control Panel > System > Advanced >
+       Environment Variables).
 
-1.1 Download the following packages from http://www.mingw.org/download.shtml:
+3      Install SCons
 
-      binutils-2.16.91-...tar.gz
-      gcc-core-3.4.5-...tar.gz
-      gcc-g++-3.4.5-...tar.gz
-      mingw32-make-3.80.0-3.tar.gz
-      mingw-runtime-3.9.tar.gz
-      mingw-utils-0.3.tar.gz
-      MSYS-1.0.11-...exe
-      msys-autoconf-2.59.tar.bz2
-      msys-automake-1.8.2.tar.bz2
-      msysDTK-1.0.1.exe
-      msys-libtool-1.5.tar.bz2
-      w32api-3.6.tar.gz
+       Download the latest SCons version from http://www.scons.org/download.php
 
-1.2 Install in C:\MinGW
+4      Install the dependencies
 
-      binutils, gcc-core, gcc-g++, mingw32-make, mingw-runtime,
-      mingw-utils, w32api
+       Download ftp://ftp.lyx.org/pub/lyx/contrib/lyx-windows-deps-msvc2008.zip
+       and extract in the root directory of your LyX files (so you will get
+       a directory called lyx-windows-deps-msvc2008 next to the other directories
+       like src, development etc.).
 
-1.3 Install in C:\msys
+5      Compile
 
-      MSYS, msys-autoconf, msys-automake, msysDTK, msys-libtool
+       Start a Visual Studio command prompt (Start > Programs >
+       Microsoft Visual C++ 9.0 Express Edition > Visual Studio Tools >
+       Visual Studio 2008 Command Prompt) and run:
 
+       cd <lyx root directory>\development\Win32\packaging
+       build_msvc.bat
 
-2 Gettext 
+6      First start of LyX
 
-2.1 Download the following package from http://www.gnu.org/software/gettext:
+       To start the just compiled lyx.exe, it is necessary to copy the following
+       files to the folder where the just compiled "lyx.exe" is:
 
-      gettext-0.14.5.tar.gz
+       Aiksaurus.dll
+       aspell.dll
+       iconv.dll
+       intl.dll
+       Microsoft.VC90.CRT.manifest
+       msvcp90.dll
+       msvcr90.dll
+       QtCore4.dll
+       QtGui4.dll
 
-2.2 Extract the package in your home directory and run
+       msvcp90.dll and msvcr90.dll are the C Runtime and C++ libraries
+       supplied with MSVC 2008. They are freely redistributable.
+       See http://msdn2.microsoft.com/en-us/library/8kche8ah.aspx
+       for details.
 
-      ./configure --disable-shared --prefix=/mingw
-      make
-      make install
+       All of the other .dlls above and the lyx executable are compiled
+       from code released under the GPL which states (section 3) that
+       GPL software may be linked against system files such as msvcp90.dll
+       and msvcr90.dll.
 
+Compiling with MinGW
+====================
 
-3 Libiconv
+       These instructions allow you to create a basic LyX build with MinGW.
+       To be able to use all LyX features, compiling with MSVC 2008 is recommended.
+       Creating an installer for MinGW builds is no longer supported.
 
-3.1 Download the following package from http://www.gnu.org/software/libiconv:
+1      Install MinGW, and all the gcc-related stuff, and win32api. 
 
-      libiconv-1.10.tar.gz
+2      download qt-win-opensource-4.x.x-mingw.exe and install to c:\qt.
 
-3.2 Extract the package in your home directory and run
+3      install python and scons as instructed above. Set $path for python
+          to make your life a bit easier.
 
-      ./configure --prefix=/mingw
-      make
-      make install
+4      Check out lyx svn to c:\lyx-devel\lyx-2.0.x
 
+5      Download zlib binaries and developer files (zlib-1.2.3-bin.zip and
+          zlib-1.2.3-lib.zip) from http://gnuwin32.sourceforge.net/packages/zlib.htm
+          libiconv from http://gnuwin32.sourceforge.net/packages/libiconv.htm
+          gettext  from http://gnuwin32.sourceforge.net/packages/gettext.htm
+          unpack all of them to the same directory c:\lyx-devel\mingw_deps.
 
-4 QTWIN (see http://sourceforge.net/projects/qtwin)
+6      start a command window, run commands:
+          $ cd c:\lyx-devel\lyx-2.0.x
+          $ scons -f development\scons\SConstruct \
+              extra_lib_path=..\mingw_deps\lib  \
+                  extra_inc_path=..\mingw_deps\include \
+                  extra_bin_path=..\mingw_deps\bin \
+                  qt_dir=c:\qt \
+                  DESTDIR=..\lyx-2.0-install \
+                  install
 
-4.1 Get the latest CVS version
 
-    Using the cvs executable that is packaged with MSYS,
-    from the MSYS command prompt:
+Creating the Installer
+======================
 
-      cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/qtwin login
-      <return> (i.e., no password)
-      cvs -z3 -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/qtwin co \
-         -r QT_WIN32_3_3_BRANCH qt-3
+       To create an installer with LyX and all related components, download
+       and install the latest NSIS from http://nsis.sourceforge.net
 
-4.2 Compile the qtwin library
+       Open development\Win32\packaging\installer\setttings.user.nsh and modify
+       the settings depending on your build environment.
 
-    Open a Windows command line (run cmd.exe) and enter 
+       Finally, go to development\Win32\packaging\installer
+       (in a normal Windows Explorer), right-click on lyx.nsi and click
+       "Compile NSIS Script".
 
-      cd <path_to_your_qtwin_dir>
-      set QMAKESPEC=win32-g++
-      setenv.bat
-      configure.bat -release
+       You can also use the installer target of scons. Namely, use a command like
+          $ scons -f development\scons\SConscript installer
+       This will create $BUILDDIR\lyx-version-timestamp-Installer.exe for a devel version,
+       and $BUILDDIR\lyx-version-Install.exe for a released version of lyx.
 
-
-5. Aspell
-
-5.1 Download the following package from http://aspell.net/
-
-      aspell-0.60.4.tar.gz
-
-5.2 Extract the package in your home directory. 
-
-    Use development/Win32/packaging/build_aspell.sh to build Aspell now. 
-
-5.3 You can download pre-compiled aspell dictionaries from 
-    http://wiki.lyx.org/Windows/Aspell6
-
-
-6. LyX
-
-6.1 As mentioned above, read the README in development/Win32/packaging.
-
-=============================================================================
+       If you also want to generate bundled installer, download 
+       lyx-windows-bundle-deps.zip from http://www.lyx.org/~bpeng, unpack
+       to lyx-windows-bundle-deps under the top source directory, and run
+         $ scons -f development\scons\SConstruct installer bundle=1
+       If you prefer to use another directory, you can use option bundle_dir like
+         $ scons -f development\scons\SConstruct installer bundle=1 bundle_dir=c:\bundle