X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=INSTALL;h=4f5c03986110840430c804697bce0e1acd3b7631;hb=8ff950ac4dd6a40327ca0d02f43bd42adf4f89ec;hp=a46a3ca6a79b6b5a6c07e09033c31bc43d58dfe9;hpb=a61357a9a84c55ce0c74b8d2bbfb23900cb5bd17;p=p5sagit%2Fp5-mst-13.2.git diff --git a/INSTALL b/INSTALL index a46a3ca..4f5c039 100644 --- a/INSTALL +++ b/INSTALL @@ -42,8 +42,13 @@ on the platform. If that's not okay with you, use make test make install -For information on non-Unix systems, see the section on -L<"Porting information"> below. +For information on non-Unix systems, see the section on L<"Porting +information"> below. + +If "make install" just says "`install' is up to date" or something +similar, you may be on case-preserving filesystems such as Mac's HFS+ +and you should say "make install-all". (This confusion brought to you +by the Perl distribution having a file called INSTALL.) If you have problems, corrections, or questions, please see L<"Reporting Problems"> below. @@ -264,6 +269,28 @@ For more help on Configure switches, run: sh Configure -h +=head2 Building Perl outside of the source directory + +Sometimes it is desirable to build Perl in a directory different from +where the sources are, for example if you want to keep your sources +read-only, or if you want to share the sources between different binary +architectures. + +Starting from Perl 5.6.1 you can do this (if your file system supports +symbolic links) by + + mkdir /tmp/perl/build/directory + cd /tmp/perl/build/directory + sh /path/to/perl/source/Configure -Dmksymlinks ... + +This will create in /tmp/perl/build/directory a tree of symbolic links +pointing to files in /path/to/perl/source. The original files are left +unaffected. After Configure has finished you can just say + + make all test + +and Perl will be built and tested, all in /tmp/perl/build/directory. + =head2 Common Configure options Configure supports a number of useful options. Run B to @@ -1148,6 +1175,39 @@ you have some libraries under /usr/local/ and others under =back +=head2 Building DB, NDBM, and ODBM interfaces with Berkeley DB 3 + +Perl interface for DB3 is part of Berkeley DB, but if you want to +compile standard Perl DB/ODBM/NDBM interfaces, you must follow +following instructions. + +Berkeley DB3 from Sleepycat Software is by default installed without +DB1 compatibility code (needed for DB_File interface) and without +links to compatibility files. So if you want to use packages written +for DB/ODBM/NDBM interfaces, you need to configure DB3 with +--enable-compat185 (and optionally with --enable-dump185) and create +additional references (suppose you are installing DB3 with +--prefix=/usr): + + ln -s libdb-3.so /usr/lib/libdbm.so + ln -s libdb-3.so /usr/lib/libndbm.so + echo '#define DB_DBM_HSEARCH 1' >dbm.h + echo '#include ' >>dbm.h + install -m 0644 dbm.h /usr/include/dbm.h + install -m 0644 dbm.h /usr/include/ndbm.h + +Optionally, if you have compiled with --enable-compat185 (not needed +for ODBM/NDBM): + + ln -s libdb-3.so /usr/lib/libdb1.so + ln -s libdb-3.so /usr/lib/libdb.so + +ODBM emulation seems not to be perfect, but is quite usable, +using DB 3.1.17: + + lib/odbm.............FAILED at test 9 + Failed 1/64 tests, 98.44% okay + =head2 What if it doesn't work? If you run into problems, try some of the following ideas.