1----------------------------- 2ZSH ON SPECIFIC ARCHITECTURES 3----------------------------- 4 5These are the OSes that zsh has been tried on. If you succeed in getting 6zsh to work on an OS not listed, let us know. The information in this 7list may be out of date, as the developers do not have access to all 8machines. In general, GNU/Linux distributions, Solaris and Cygwin are 9reasonably well covered. Please let us have any recent information 10on other systems. The information for systems not known to have been 11tested recently is marked as `out of date'. 12 13On all machines if you use gcc and upgrade your OS you must rebuild gcc 14after the OS upgrade. A gcc left from a previous OS may seem to work 15but compiling more complex programs may fail mysteriously. 16 17The format of entries is thus: 18 19 Vendor: OS & version (hardware type) [zsh version tried] 20 information 21 22Machines 23-------- 24 25Apple: MacOS X/Darwin 10.x 26 Should build `out-of-the-box'. 27 28 For dynamic loading to work on 10.1 and 10.2, you need to use the 29 dlcompat library. It can be downloaded from: 30 http://sourceforge.net/project/showfiles.php?group_id=17203 31 32 The zsh/zpty library is not working on 10.1 and 10.2, but is on 33 10.3. This causes the tests starting `Y' in the Test directory to 34 fail, even though the features to be tested are working. 35 36 Reported to compile with no problems on 10.4. 37 38 Compiling with GCC on 10.9.1 (Mavericks) reportedly causes a crash 39 due to a libiconv problem. Compile with clang instead. 40 41 Multibyte support works; you probably wish to set the 42 option COMBINING_CHARS, which is not enabled by default. 43 Problems have been noted when outputting multibyte characters 44 to the terminal from a "preexec" function. 45 46Red Hat Inc.: Cygwin 47 Should build `out-of-the-box'. The compilation directory should 48 be on a file system mounted as binary (the mount command shows 49 `binmode'). There are various issues with Cygwin versions before 50 1.3.2 - you are adviced to update to the latest release. 51 52 Process substitution using <(...), >(...), =(...) may be 53 problematic. Different versions of zsh and Cygwin have 54 a different mix of issues. 55 56 Problems handling subprocesses have been reported with Cygwin 57 1.7.5. It is not currently known how the problems split between 58 Cygwin and zsh. 59 60 Some of the tests in the Test subdirectory are known to fail: 61 this is because the UNIX environment is not completely implemented. 62 63 Cygwin allows mount without existing mount point (e.g. 64 "mount //server/path /usr/src" where /usr/src does not exist). 65 Path completion will fail inside these mounts; make sure that 66 every mount point really exists. 67 68FreeBSD: FreeBSD 2.2.7, 3.x, 4.x, ... 7 69 Should build `out-of-the-box'. On FreeBSD 2.2, dynamic loading 70 does not work, but it does with 3.x and later. 71 72HP: HP-UX 9, 10.20, 11.x (PA-RISC, Itanium) 73 Should build `out-of-the-box'. 74 75 Previous problems encountered on HP-UX 11.x: 76 77 Some of the special keys on the keyboard (backspace, delete) 78 have been found to stop functioning. One suggested fix is 79 to alter the way the curses library is linked in the Makefile. 80 Replacing `-lcurses' with `-lHcurses -lcurses' in the libraries 81 is reported to fix this on 11.0, but is no longer necessary on 82 more recent versions of HP-UX 11, i.e. 11.11+. 83 84 Typical gcc installations on HP-UX use HP's linker rather than 85 the GNU one. Configure will fail to set up dynamic linking in 86 this situation. The following should allow building of modules: 87 DLLD=/usr/ccs/bin/ld DLLDFLAGS=-b DLCFLAGS=-fpic ./configure ... 88 89 Compiling with gcc 2.7.1 is known to fail with header file 90 conflicts. Use the HP ANSI C compiler. 91 92IBM: AIX 3.2, 4.x, 5.x 93 Should build `out-of-the-box'. 94 95 Certain features will not work, in particular --enable-cap 96 and --enable-zsh-mem. (The feature enabled by --enable-cap 97 is apparently present, however. Help getting this to work 98 would be appreciated.) 99 100 On 3.2, for 64-bit integer support you need to compile with gcc, as 101 the native compiler does not support ANSI simultaneously with 102 `long long'. On 4.1, there appeared to be problems using 103 --enable-dynamic (the default) with gcc (version was 2.7.2.3), 104 though native cc works. More information about this problem 105 would be appreciated. 106 107 It was reported, that at least some 4.x versions have problem 108 with curses - variables boolcodes and some other are declared 109 in term.h but missing is libcurses.a. That makes native compiler 110 very unhappy (GCC 3.0 apparently does not mind). Zsh now defaults 111 to termcap on AIX; any info about this problem is appreciated. 112 113Linux: Linux 2.x, 3.x (various 32-bit and 64-bit processors) 114 Should build `out-of-the-box'. 115 116 The following problems should not occur with recent 117 distributions. 118 119 If you are using an early minor version of libc 5, then a bug 120 in the auto-configuration process may cause zsh to think that 121 your system doesn't support the lstat function. If the configure 122 process reports that there is no lstat, edit config.h and change 123 HAVE_LSTAT to 1. libc-5.2.18 or later does not have this problem. 124 125 Some versions of glibc2 have a conflict with <asm/resource.h> 126 which causes a redefinition warning on RLIM_INFINITY. This 127 causes configure to decide that <sys/resource.h> is not present, 128 which can cause compilation errors in zsh's rlimit code. The 129 best solution is to edit config.h after running configure and 130 #define HAS_SYS_RESOURCE_H. 131 132NetBSD: NetBSD 1.x 133 Should build `out-of-the-box'. 134 135OpenBSD: OpenBSD 2.x, 3.x 136 Should build `out-of-the-box'. 137 138OpenIndiana: OpenIndiana 151a 139 Problems have been reported with awk when used to generate 140 prototype files for building zsh. Upgrading to gawk (GNU awk) 141 version 4.0.0 fixes this. 142 143Sun: Solaris 2.x, 8, 9, ... 144 It is recommended that the system library version of iconv() 145 be used rather than libiconv since there are incompatibilities 146 in the way codesets are named. 147 148 The UCB versions of the routines for reading directories are not 149 usable (the struct definitions are incompatible with the ones 150 assumed by zsh). The symptom of this is that globbed filenames in 151 the compiled version of zsh will be missing the first two letters. 152 To avoid this, make sure you compile zsh without any reference 153 to /usr/ucblib in your LD_LIBRARY_PATH. You can easily do this 154 by just unsetting LD_LIBRARY_PATH before building zsh. 155 156 Problems were once reported using --enable-largefile (the default) to 157 enable large file system and integer support on Solaris 2 with gcc 158 before 2.95.2. Recent versions of gcc appear to be unproblematic. 159 160Other machines 161-------------- 162 163Zsh has previously been compiled on the following machines, but the 164developers do not have direct access to them and the reports may be out 165of date. Some of these OS's are now very long in the tooth. We would 166be glad to receive any reports of success or failure on these OS's --- 167and, of course, any others not mentioned in this file. 168 169Apple/NeXT OpenStep 4.2 for i386. 170 Reported to work at least with gcc 2.8.1 and gawk 2.15 patchlevel 171 6, but not with the bundled cc 2.7.2.1 and awk. 172 173Cray: Unicos (C90 and T90) 174 Should build `out-of-the-box'. 175 176Data General: DG/UX 5.4R3.10 MU01 (various AViiONs) 177 Should build `out-of-the-box'. 178 179DEC: Ultrix (Alpha or DECstation) 180DEC: Mach 3.0 (DECstation 5000/25) 181DEC: OSF/1 1.2, 1.3, 2.0, 3.x, DEC Unix 4.x (Alpha) 182 183HP/Compaq: Tru64 4.x, 5.x 184 185Next: NextStep 3.* 186 Should build `out-of-the-box', but the zsh malloc routines are 187 not recommended. 188 189SCO: UnixWare 2.1.3 190 Builds `out-of-the-box'. 191 192SGI: IRIX 6.2, 6.3, 6.5 193 194SIEMENS: SINIX 195 196SIEMENS: Reliant UNIX 197 198Sun: SunOS 4.1.x 199