From 654a1a7092cc0427bff2c1dbd25d9a132429e3bb Mon Sep 17 00:00:00 2001 From: jschauma Date: Sun, 10 Apr 2005 22:45:25 +0000 Subject: Don't use — -- this doesn't seem to know about it. Import README.Linux --- doc/guide/files/platforms.xml | 64 ++++++++++++++++++++++++++++++++++++------- 1 file changed, 54 insertions(+), 10 deletions(-) (limited to 'doc/guide') diff --git a/doc/guide/files/platforms.xml b/doc/guide/files/platforms.xml index 912cb155aa6..30b038b2657 100644 --- a/doc/guide/files/platforms.xml +++ b/doc/guide/files/platforms.xml @@ -1,4 +1,4 @@ - + Using pkgsrc on systems other than &os; @@ -331,7 +331,7 @@ If you are using SGI's MIPSPro compiler, please set PKGSRC_COMPILER=mipspro - in /etc/mk.conf &emdash; otherwise, pkgsrc will assume you + in /etc/mk.conf. Otherwise, pkgsrc will assume you are using gcc and may end up passing invalid flags to the compiler. Note that bootstrap should create an appropriate mk.conf.example by default. @@ -343,14 +343,58 @@ '--preserve-path' flag. - + + Linux + + + Some versions of Linux (for example Debian GNU/Linux) need either + libtermcap or libcurses (libncurses). Installing the distributions + libncurses-dev package (or equivalent) should fix the problem. + + + pkgsrc supports both gcc (GNU Compiler Collection) and icc (Intel C++ + Compiler). gcc is the default. icc 8.0 and 8.1 on i386 have been tested. + + + To bootstrap using icc, assuming the default icc installation + directory: + env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \ + ac_cv___attribute__=yes ./bootstrap + + + icc 8.1 needs the `-i-static' argument instead of -static-libcxa. + + + icc supports __attribute__, but the GNU configure test uses a nested + function, which icc does not support. #undef'ing __attribute__ has the + unfortunate side-effect of breaking many of the Linux header files, which + cannot be compiled properly without __attribute__. The test must be + overridden so that __attribute__ is assumed supported by the + compiler. + + After bootstrapping, you should set PKGSRC_COMPILER + in /etc/mk.conf: + PKGSRC_COMPILER=icc + + The default installation directory for icc is + /opt/intel_cc_80, which + is also the pkgsrc default. If you have installed it into a different + directory, set ICCBASE in + /etc/mk.conf: + ICCBASE=/opt/icc + + pkgsrc uses the static linking method of the runtime libraries + provided by icc, so binaries can be run on other systems which do not + have the shared libraries installed. + + Libtool, however, extracts a list of libraries from the ld(1) + command run when linking a C++ shared library and records it, throwing + away the -Bstatic and -Bdynamic options interspersed between the libraries. + This means that libtool-linked C++ shared libraries will have a + runtime dependency on the icc libraries until this is fixed in libtool. + + + OpenBSD -- cgit v1.2.3