X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=INSTALL.scons;h=e6b66fa90bcbbebee8c19741032ee0402581e64d;hb=831724578c2a8959c6f7fc8d87a9d250abeaf8bb;hp=482cf90e798e1b0aa78c1254f0cf38dc61a7ef7a;hpb=8f261b15297c0b1ee4eeee4620a5794b808c1eab;p=lyx.git diff --git a/INSTALL.scons b/INSTALL.scons index 482cf90e79..e6b66fa90b 100644 --- a/INSTALL.scons +++ b/INSTALL.scons @@ -30,13 +30,13 @@ Prerequisites: -------------- * Python: - Python >= 1.5.2 is required to run scons, but Python >= 2.3 is used by + Python >= 2.6.0 is required to run scons, but Python >= 2.3 is used by lyx itself so the newer version is needed. Python is widely available on non-windows systems. Windows users can download and install python from http://www.python.org. * SCons: - scons >= 0.96.92 is needed. You can either use a full system-wide scons + scons >= 1.1.0 is needed. You can either use a full system-wide scons distribution or a light-weight one (called scons-local) installed along with the lyx source tree. Both variants of scons are freely available from http://www.scons.org. Note that LyX source may ship with scons-base @@ -56,8 +56,14 @@ The scons system resides under development/scons. You can invoke it from either development/scons by, for example: > cd development/scons > scons frontend=qt4 qt_dir=d:/qt4 -j3 lyx -or from top source directory by: - > scons -f development/scons/SConstruct frontend=qt4 all +or from any other directory and use -f option to point to the SConstruct +file: + > mkdir build + > cd build + > scons -f ../development/scons/SConstruct frontend=qt4 all +If you are tired of typing development/scons/SConstruct, you can link +development/scons/SConstruct to the top source directory and use this +SConstruct file. There are three types of command line options: * key=value are user options. They are used to tell scons which @@ -86,7 +92,7 @@ Components to use/build: one. * gettext=included/system/auto * nls=yes/no whether or not enable natural language support. - * spell=aspell/pspell/ispell/auto: spell engine + * spell=aspell/auto: spell engine Paths: Most of them will be probed if not specified. @@ -104,12 +110,11 @@ Paths: Most of them will be probed if not specified. Convenience options: - * fast_start=yes/no: if true, bypass initial configuration step and use - existing src/config.h * load_option=yes/no/opt1,opt2/-opt1,opt2: if true, load previously saved command line options so you can run 'scons install' directly after a long 'scons all' building command. You can load selected options using load_option=opt1,opt2,... or exclude options using the - version of it. + Note that the option 'bundle' is not reloaded. * rebuild=target1,target2... By default, scons will exam all components when you build lyx. You can free scons from some hard work and save yourself some time by telling scons to rebuild only specified @@ -122,9 +127,14 @@ Installation options: * prefix: directory where lyx will be installed * exec_dir: directory where lyx binaries will be installed. Default to $prefix/bin - * dest_dir: if specified, install to this directory instead of $prefix. + * DESTDIR: if specified, install to this directory instead of $prefix. * version_suffix=yes/no/something : if specified, this suffix will be appended to the user data directory. + * win_installer: if specified under windows, and if 'installer' target + is given, generate NSIS installer specifed as win_installer which can + be a full path name. The default is lyx-version-timestamp-Installer.exe + for a development version, and lyx-version-Installer.exe for a released + version. Compiler choice and flags: @@ -146,9 +156,9 @@ You can specify one or more of the following targets: Programs: tex2lyx, client, lyx, all = tex2lyx + client + lyx Installation: - po, install = all + po + po, install = all + po, installer (windows only, need NSIS) Misc: - msvs_projects + msvs_projects, update_po Your built targets are put into $build_dir, which is debug (mode=debug), release (mode=release) or any name specified via build_dir=name. The @@ -156,12 +166,16 @@ directory structure is: $build_dir - common: most of the intermediate files, mostly object files - libs: all static libraries - - qt4 etc: lyx executable built with the frontend - executables: lyxclient, tex2lyx, lyx MSVS projects will be put to development/scons (and you should invoke scons from there for this target). +update_po is similar to 'cd po; make update-po' but does not generate +.gmo files, which is the task of the install target. Note that this +target is the only target that changes files (po/*.po in this case) +of the lyx source tree. + A typical working sequence: --------------------------- @@ -173,12 +187,10 @@ A typical working sequence: (build lyx, client and tex2lyx, options like qt_dir will be carried over here) > scons rebuild=lyxbase - (working on lyx_main.C, so only need to rebuild lyxbase) + (working on LyX.cpp, so only need to rebuild lyxbase) > scons (build again, only lyxbase will be rebuilt) - > scons fast_start=no --config=force - (need to regenerate src/config.h) - > scons prefix=/usr/site dest_dir=/install/dir + > scons prefix=/usr/site DESTDIR=/install/dir (lyx is built for /usr/site, but install to /install/dir)