-
-Preparing a binary distribution for the use of others
-------------------------------------------------------
-
- o Compile LyX with the right compiler switches for your
- architecture. Make sure you use the --without-latex-config switch
- of configure, since others might not be interested by your
- configuration :-)
-
- o Create a file README.bin describing your distribution and
- referring to *you* if problems arise. As a model, you can use the
- file development/tools/README.bin.example, which can be a good
- starting point.
-
- o Type `make bindist'. This will create a file
- lyx-1.xx.yy-bin.tar.gz. Rename it to reflect you architecture
- and the peculiarities of your build (e.g. static vs. dynamic).
-
- o Check that everything is correct by unpacking the distribution
- in some private place and running it. In particular, check the
- output of `ldd lyx' to know which libraries are really needed.
-
- o Upload your binary file to ftp.devel.lyx.org:/pub/incoming, and
- notify larsbj@lyx.org.
-
-
-Problems
---------
-
-This section provides several hints that have been submitted by LyX
-team member or users to help compiling on some particular
-architectures. If you find that some of this hints are wrong, please
-notify us.
-
- o On SUN Sparc Solaris 8, you need gnumake. The LyX makefiles do not
- work with Solaris make.
-
- The Solaris ar seg-faults trying to build the insets library. You
- will need to use the ar from the GNU binutils for this subdirectory.
-
- o LyX can be compiled on Tru64 Unix with either GNU's gcc or the default
- Compaq cxx compiler.
-
- There are no Alpha-specific problems with gcc.
-
- The following notes all refer to compilation with the Compaq cxx compiler.
-
- LyX cannot be compiled on Tru64 Unix 4.0d or 4.0e with the default cxx
- compiler. You should upgrade to at least cxx V6.2, to be found at
- ftp::/ftp.compaq.com/pub/products/C-CXX/tru64/cxx/CXX622V40.tar. Users
- running Tru64 Unix 4.0f and greater should have no real problems compiling
- LyX.
-
- cxx V6.2 will compile LyX out of the box.
- cxx V6.3-020 is also known to work, although there is a bug in
- /usr/include/cxx/deque that will break compilation in FormPreferences.C.
- Compaq are investigating, but a patch that works /now/ is:
-
---- /usr/include/cxx/deque_safe Mon Mar 4 21:09:50 2002
-+++ /usr/include/cxx/deque Mon Mar 4 21:09:00 2002
-@@ -570,9 +570,11 @@
- {
- if (size() >= x.size())
- erase(copy(x.begin(), x.end(), begin()), end());
-- else
-- copy(x.begin() + size(), x.end(),
-- inserter(*this,copy(x.begin(),x.begin()+size(),begin())));
-+ else {
-+ const_iterator mid = x.begin() + difference_type(size());
-+ copy(x.begin(), mid, begin());
-+ insert(end(), mid, x.end());
-+ }
- }
- return *this;
- }
-
- At the time of writing, cxx V6.5-026 is the latest cxx compiler. It is
- /not/ recommended. The compiler itself appears to be both buggy and
- extremely bloated (trebling the size of the stripped LyX binary).
-
- In order to compile LyX with the cxx compiler, you should run configure
- with the following flags:
- CXX='cxx -std strict_ansi'
- CXXFLAGS='-nopure_cname -nocleanup -ptr /tmp/lyx_cxx_repository -O2'
- CC='cc -std1'
- The -nopure_cname flag is needed for compilers V6.3 and above because
- LyX makes use of functions like popen, pclose that are defined in the
- c version of <stdio.h> but are not formally part of any c/c++ standard.
- They are not, therefore, included in the <cstdio> header file.