[BACK]Return to README.Linux CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / bootstrap

Annotation of pkgsrc/bootstrap/README.Linux, Revision 1.4

1.4     ! dmcmahil    1: $NetBSD: README.Linux,v 1.3 2005/02/16 11:02:50 grant Exp $
1.1       grant       2:
                      3: Please read the general README file as well.
                      4:
1.4     ! dmcmahil    5: ==========================================================================
        !             6:
        !             7: Some versions of Linux (RHEL3 Update 2 for i386 for example) have a
        !             8: /usr/lib/libacl.la libtool archive file that lists /lib/libattr.la as a
        !             9: dependency.  However, libattr.la does not exist in /lib/libattr.la.  If
        !            10: this is the case, the bootstrap will fail with
        !            11:
        !            12: grep: /lib/libattr.la: No such file or directory
        !            13: /usr/pkgsrc/bootstrap/work/wrk/pkgtools/pkg_install/work/.tools/bin/sed: can't read /lib/libattr.la: No such file or directory
        !            14: libtool: link: `/lib/libattr.la' is not a valid libtool archive
        !            15:
        !            16: The soltion is to copy /usr/lib/libattr.la to /lib/libattr.la with:
        !            17:
        !            18: cp -p /usr/lib/libattr.la /lib
        !            19:
        !            20: ==========================================================================
        !            21:
1.1       grant      22: Some versions of Linux (for example Debian GNU/Linux) need either libtermcap
                     23: or libcurses (libncurses).  Installing the distributions libncurses-dev
                     24: package (or equivalent) should fix the problem.
1.2       grant      25:
1.4     ! dmcmahil   26: ==========================================================================
        !            27:
1.2       grant      28: pkgsrc supports both gcc (GNU Compiler Collection) and icc (Intel C++
                     29: Compiler). gcc is the default. icc 8.0 and 8.1 on i386 have been tested.
                     30:
                     31: To bootstrap using icc, assuming the default icc installation
                     32: directory:
                     33:
                     34:        env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \
                     35:                ac_cv___attribute__=yes ./bootstrap
                     36:
1.3       grant      37: note: icc 8.1 needs the `-i-static' argument instead of
                     38: -static-libcxa.
                     39:
1.2       grant      40: icc supports __attribute__, but the GNU configure test uses a nested
                     41: function, which icc does not support. #undef'ing __attribute__ has the
                     42: unfortunate side-effect of breaking many of the Linux header files, which
                     43: cannot be compiled properly without __attribute__. The test must be
                     44: overridden so that __attribute__ is assumed supported by the compiler.
                     45:
                     46: After bootstrapping, you should set PKGSRC_COMPILER in mk.conf:
                     47:
                     48:        PKGSRC_COMPILER=icc
                     49:
                     50: The default installation directory for icc is /opt/intel_cc_80, which
                     51: is also the pkgsrc default. If you have installed it into a different
                     52: directory, set ICCBASE in mk.conf:
                     53:
                     54:        ICCBASE=/opt/icc
                     55:
                     56: pkgsrc uses the static linking method of the runtime libraries
                     57: provided by icc, so binaries can be run on other systems which do not
                     58: have the shared libraries installed.
                     59:
                     60: Libtool, however, extracts a list of libraries from the ld(1) command
                     61: run when linking a C++ shared library and records it, throwing away
                     62: the -Bstatic and -Bdynamic options interspersed between the libraries.
                     63: This means that libtool-linked C++ shared libraries will have a
                     64: runtime dependency on the icc libraries until this is fixed in
                     65: libtool.

CVSweb <webmaster@jp.NetBSD.org>