Home | History | Annotate | Line # | Download | only in compat
README revision 1.15
      1 $NetBSD: README,v 1.15 2021/05/07 14:52:59 cjep Exp $
      2 
      3 Special notes for cross-hosting a NetBSD build on certain platforms.  
      4 Only those platforms which have been tested to complete a "build.sh" run
      5 are listed.
      6 
      7 All hosts must have a POSIX compatible sh. /bin/sh is assumed unless 
      8 otherwise set. This can be overridden by setting HOST_SH in the environment.
      9 
     10 In addition all hosts must provide the following local tools:
     11   gzip
     12   gcc
     13   g++
     14   zlib and headers (this requirement may be dropped in future)
     15 
     16 FreeBSD
     17 =======
     18 
     19 build.sh was recently tested on:
     20 * FreeBSD 13 (amd64, aarch64) 
     21 * FreeBSD 12.2 (amd64, aarch64)
     22 * FreeBSD 11.4 (amd64)
     23 * FreeBSD 10.4 (amd64)
     24 
     25 Linux
     26 =====
     27 
     28 build.sh has been tested on:
     29 * Amazon Linux 2 (x86)
     30 * Debian 10 (x86, aarch64)
     31 * Red Hat Enterprise Linux 8 (x86, aarch64)
     32 * SUSE Enterprise Server 15 (x86)
     33 * Ubuntu Server 20.04 (x86, aarch64)
     34 * Ubuntu Server 18.04 (x86)
     35 
     36 * The gcc and g++ package must be installed, along with the typical system 
     37   development packages (glibc-devel, etc.). The g++ package is sometimes 
     38   called gcc-c++.
     39 
     40 * The ncurses-devel package must be installed (for nbinfo).
     41 
     42 * The zlib and zlib-devel packages must be installed (these are
     43   called zlib1g and zlib1g-dev on Debian and Ubuntu Linux)
     44 
     45 * There is a known build problem on Linux/aarch64 with glibc <2.28
     46 
     47 macOS/Darwin
     48 ============
     49 
     50 build.sh was recently tested on:
     51 * macOS Big Sur
     52 * macOS Catalina
     53 
     54 with up to date Xcode command line tools and APFS filesystems.
     55 (Previously, there have been issues building on case-insensitive 
     56 HFS filesystems.)
     57 
     58 HP-UX
     59 =====
     60 
     61 * zlib must be available.
     62 
     63 NetBSD (earlier releases)
     64 =========================
     65 
     66 * Tested on NetBSD 1.5.2 (machine-independently).
     67 * Should need no special setup.
     68 * _NETBSD_SOURCE is *not* to be defined/pulled in during compat/tools builds.
     69   compat_defs.h will error out if it finds it defined. 
     70 
     71 Solaris
     72 =======
     73 
     74 (updated instruction for Solaris 11 further below)
     75 
     76 * Tested on Solaris/x86 8 (5.8) with gcc 2.95.2 and Solaris/sparc 8 (5.8)
     77   with gcc 3.2 (not yet tested with SUNWspro).
     78 
     79 * $HOST_CC needs to be set properly (for gcc, it should be set to "gcc",
     80   otherwise the improper /usr/ucb/cc may be invoked by accident).
     81 
     82 * The SUNWzlib package (or a built version of zlib visible to $HOST_CC,
     83   such as SMCzlib from sunfreeware.com) must be installed.  This will be
     84   fixed in the future to include zlib in libnbcompat.
     85 
     86 * Needs the following paths, in this order, in $PATH:
     87 
     88       /usr/xpg4/bin
     89       /usr/ccs/bin
     90       <path to host C and C++ compilers>
     91       /usr/bin
     92 
     93   /usr/ucb may optionally be placed before /usr/bin, per your preference,
     94   but /usr/ucb *MUST NOT* be before /usr/ccs/bin or before the path to
     95   the host C and C++ compilers.
     96 
     97 Solaris 11:
     98 
     99 * Solaris 11.3
    100  * Set PATH to /usr/xpg6/bin:/usr/xpg4/bin:/usr/bin
    101  * Set HOST_CC to /usr/bin/gcc
    102 
    103 * Solaris 11.4
    104  * Install gcc-5 since the default installed gcc-7 has issues when compiling 
    105    toolchain version of groff (hypot())
    106  * Set PATH to /usr/xpg7/bin:/usr/xpg6/bin:/usr/xpg4/bin:/usr/bin
    107  * set HOST_CC to /usr/gcc/5/bin/gcc
    108  * set HOST_CXX to /usr/gcc/5/bin/g++
    109