X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=INSTALL.cmake;h=86430b6bb3e6af1a80e60130522b09f2e5d408f9;hb=3d4076b598deb18660e50ec9c327efc3b15f15d0;hp=4764438adc4d7f2b62b974f972f818e203ebc70d;hpb=8f993bfcf185b15834b85d776ff9749534630760;p=lyx.git diff --git a/INSTALL.cmake b/INSTALL.cmake index 4764438adc..86430b6bb3 100644 --- a/INSTALL.cmake +++ b/INSTALL.cmake @@ -15,18 +15,17 @@ Building LyX with CMake installing Qt fix PATH, Linux/Unix: export PATH=/bin:$PATH Windows : set PATH=\bin;%PATH% - - When you wanna run LyX without installing from a out-of-source - build directory you have to set the environment variable LYX_DIR_20x + + When you want to run LyX without installing from an out-of-source + build directory you have to set the environment variable LYX_DIR_21x and it must point to the lib dir in the source tree. - Linux/Unix: export LYX_DIR_20x=/lib - Windows : set LYX_DIR_20x=\lib + Linux/Unix: export LYX_DIR_21x=/lib + Windows : set LYX_DIR_21x=\lib Windows specific - + On Windows install the supplementary modules: - * Visual Studio 2008: ftp://ftp.lyx.org/pub/lyx/contrib/lyx-windows-deps-msvc2008.zip - * Visual Studio 2010: ftp://ftp.devel.lyx.org/pub/contrib/windows/bin + * Visual Studio 2010: ftp://ftp.lyx.org/pub/lyx/devel/win_deps/lyx20-deps-msvc2010.zip or use the option LYX_DEPENDENCIES_DOWNLOAD, then you have to add these paths to your PATH variable: \msvc2010-deps\deps20\bin @@ -35,7 +34,7 @@ Building LyX with CMake \msvc2010-deps\deps20\ghostscript \msvc2010-deps\deps20\gettext-tools - If cmake couldn't find these modules set GNUWIN32_DIR, eg. + If cmake couldn't find these modules set GNUWIN32_DIR, e.g. -DGNUWIN32_DIR=c:\gnuwin32. By default cmake searches in your program folder. Or use the cmake GUI to set the GNUWIN32_DIR path. @@ -43,9 +42,9 @@ Building LyX with CMake in %ProgramFiles%/GnuWin32/ and in /usr/ or in /usr/local under Linux. If it could not find aspell, spell checking will be disabled. - - - + + + Generating build system files ------------------------------ @@ -58,44 +57,48 @@ Generating build system files argument when running cmake selects this. - + Building out-of-source ----------------------- - The standard way of using CMake is to build in a folder which doesn't resides - in the source tree. This has the advantage, that a complete fresh build could - be done by simply deleting all files in the build folder and to re-run cmake + The standard way of using CMake is to build in a folder that doesn't reside + in the source tree. This has the advantage that a complete fresh build could + be done by simply deleting all files in the build folder and re-running cmake again. Another benefit of out-of-source builds is that several builds (debug, release, command-line builds, IDE project files) could all use the same source tree. - Therefore when using cmake create a folder outside of the source tree and + Therefore when using CMake create a folder outside of the source tree and select this folder when using CMake's GUI, cmake-gui, or go into this folder when you call cmake from the shell. - + Before performing an out-of-source build, ensure that all CMake generated + in-source build information is removed from the source directory, + e.g., CMakeFiles directory, CMakeCache.txt. + + Using cmake ------------ - When calling cmake you must pass the path to the source tree (absolute are relative) - and optionally the generator (each system has its own default). Additional arguments + When calling cmake you must pass the path to the source tree (absolute or relative) + and optionally the generator (each system has its own default). Additional arguments could be passed with the -D prefix. Here some examples, assuming the build folder is in the same folder as the source tree: * Makefiles on Linux cmake ../trunk - + * Project files for QtCreator: Open the trunk/CMakeLists.txt file and select the build folder or create the files in the command line using the -G"CodeBlocks *" option, eg cmake ../trunk -G"CodeBlocks - Unix Makefiles" - + * Project files for Xcode cmake ../trunk -GXcode - + * Project files for Visual Studio 10 cmake ..\trunk -G"Visual Studio 10" @@ -117,28 +120,28 @@ Using cmake * Unused source code file Because cmake scans the directories for *.cpp and *.h files it will also - add files to the build system which are not mentioned to build. To exclude + add files to the build system that are not mentioned to build. To exclude them change their ending and re-run cmake. - - + + Build options -------------- Options could be passed by the -D prefix when running cmake. Available options will be listed on each cmake run. - Here the options with their default value: - + -Dhelp=1 lists all available options: + # Available on all systems/compilers -- LYX_CPACK = OFF : Use the CPack management (Implies LYX_INSTALL option) -- LYX_INSTALL = OFF : Build install projects/rules (implies a bunch of other options) - -- LYX_NLS = OFF : Use nls + -- LYX_NLS = ON : Use nls -- LYX_ASPELL = OFF : Require aspell -- LYX_ENCHANT = OFF : Require Enchant -- LYX_HUNSPELL = OFF : Require Hunspell -- LYX_DEVEL_VERSION = OFF : Build developer version - -- LYX_RELEASE = ON : Build release version, build debug when disabled + -- LYX_RELEASE = OFF : Build release version, build debug when disabled -- LYX_PACKAGE_SUFFIX = ON : Use version suffix for packaging -- LYX_PCH = OFF : Use precompiled headers -- LYX_MERGE_FILES = OFF : Merge source files into one compilation unit @@ -146,13 +149,13 @@ Build options -- LYX_QUIET = OFF : Don't generate verbose makefiles -- LYX_INSTALL_PREFIX = OFF : Install path for LyX -- LYX_EXTERNAL_LIBINTL = ON : Use external libintl - + # GCC specific -- LYX_PROFILE = OFF : Build profile version -- LYX_EXTERNAL_BOOST = OFF : Use external boost -- LYX_PROGRAM_SUFFIX = ON : Append version suffix to binaries -- LYX_DEBUG_GLIBC = OFF : Enable libstdc++ debug mode - -- LYX_DEBUG_GLIBC_PEDANTIC = OFF : Enable libstdc++pedantic debug mode + -- LYX_DEBUG_GLIBC_PEDANTIC = OFF : Enable libstdc++ pedantic debug mode -- LYX_STDLIB_DEBUG = OFF : Use debug stdlib -- LYX_CONCEPT_CHECKS = OFF : Enable concept-checks @@ -163,63 +166,63 @@ Build options -- LYX_CONFIGURE_CHECKS = OFF : Also run configure checks for MSVC -- LYX_DEPENDENCIES_DOWNLOAD= OFF : Download precompiled 3rd party libraries for MSVC 10 - + Using the merged files build ----------------------------- - When the option 'LYX_MERGE_FILES' is used then for each library a files - is generated which includes all source files of this library, this speeds - up compilation about factor 5. + When the option 'LYX_MERGE_FILES' is used then for each library a file + is generated that includes all source files of this library, this speeds + up compilation by a factor of about 5. - When you heavily work on one file you could comment out the relevant + When you heavily work on one file you could comment out the relevant define in the '_allinone_const.C' file, so only the file _allinone_touched.C' - file will be re-compiled again an again. + will be re-compiled again and again. - Adding new files - When you add new files the merging files have to be rebuild: + When you add new files the merging files have to be rebuilt: cmake -DLYX_MERGE_REBUILD=1 . - Or start over by completely cleaning the build folder. + Or start over by completely cleaning the build folder. - - Starting over with same configuration - Delete all files but CMakeCache.txt and call + - Starting over with the same configuration + Delete all files except CMakeCache.txt and call cmake . Visual Studio C++ ------------------ - + * Warnings: The default warning level of the msvc cmake builds is /W3. To enable /W4 use '-DLYX_WALL=1 ' - and + and '-DLYX_WALL=0' - switches back to to /W3, + switches back to to /W3. To disable a specific warning add it to MSVC_W_DISABLE in cmake/CMakeLists.txt. To make the warning an error add it to MSVC_W_ERROR. - + * Memory leak detection For MSVC the usage of 'Visual Leak Detection' could be enabled (http://dmoulding.googlepages.com/vld): -DLYX_VLD=1 - + Building vld requires the 'Debugging Tools For Windows' (~16MB) http://www.microsoft.com/whdc/devtools/debugging/default.mspx Eventually you have to copy dbghelp.dll from your Visual Studio - Common7\IDE folder into the binary directory. + Common7\IDE folder into the binary directory. 'vld.ini' is part of lyx.proj where you can configure vld. - - The docu for vld could be found in development/Win32/vld, or + + The documentation for vld can be found in development/Win32/vld, or http://www.codeproject.com/tools/visualleakdetector.asp - - + + Some tips: - * the Release build links much faster + * the Release build links much faster * for the 'Debug' and 'Release' build all precompiled headers are enabled - to compile without pch (non file merge mode) This could be used to check + to compile without pch (non file merge mode) This could be used to check if all necessary headers are included. * use 'MinSizeRel' which only precompiles the STL and Boost headers * use 'RelWithDebInfo' which does not use any precompiled headers @@ -234,18 +237,18 @@ GCC/Windows (Win2k only works with MSYS, XP?) Ubuntu/Kubuntu ---------------_ +--------------- You need additionally these packages: * g++ * cmake * qt4-dev-tools - + Xcode/Mac ---------- - + Some tips: * Xcode prefers UTF8 when opening source files, though LyX usually uses @@ -254,23 +257,41 @@ Xcode/Mac * You can run and debug LyX from Xcode. For LyX to find its resources, there are two possibilities: - a) Put a resource directory, e.g. a link to the lib directory of the + a) Put a resource directory, e.g. a link to the lib directory of the source tree, at .../trunk/../build/bin/Resources b) Select the lyx-qt4 executable in Xcode, click on "Get Info" in the - context menu and add "-sysdir a_valid_LyX_resource_directory" + context menu and add "-sysdir a_valid_LyX_resource_directory" pointing e.g. to a valid Contents/Resources of a LyX.app directory. * LyX on Mac doesn't look for fonts in the resource directory if the executable is not in an .app bundle. Instead you have to create a symbolic link to the fonts directory in the place where the executable is: ln -s .../trunk/lib/fonts .../trunk/../build/bin/Debug/ - If you don't do that math character will not show up correctly. + If you don't do that math characters will not show up correctly. * CMake properly finds the Qt4 library bundles from Trolltech's binary Qt4 package for Mac. So no need to compile Qt on your own. +Updating the translations +-------------------------- + + Read README.localization for information on the translation process. + Here we list only the CMake specific part. As with the autotools build + system the translations are only updated on demand. + + - Update .po files and create .gmo files (does not touch the source tree): + make translations + + - Copy the updated .po files into the source tree for committing: + make update-po + + - Update the layouttranslations file in the source tree: + make layouttranslations1 + + + Packaging ---------- @@ -287,6 +308,6 @@ Packaging - Binary .rpm: create : cpack -G RPM --config CPackConfig.cmake - list : rpm -qlp lyx-*.rpm - install: rpm -U lyx-*.rpm + list : rpm -qlp lyx-*.rpm + install: rpm -U lyx-*.rpm