2 # MACHINES -- operating system specific information
5 nmh is routinely built and tested on recent versions of the following
7 Cygwin (32- and 64-bit)
10 Linux (Fedora, Ubuntu, and CentOS distributions)
15 nmh was known in the distant past to compile on the following platforms (save
16 the exceptions noted below), using an ANSI C compiler, such as gcc:
20 Solaris 7 and 8 (sparc,x86)
23 On all platforms, the following programs are required to build nmh from a
24 snapshot of the source code repository:
25 autoconf 2.68 or later
26 automake 1.12 or later
28 bison 2.3 or later, Berkeley yacc 1.9 or later, or Solaris yacc 4.0
29 They are not required if building from an nmh distribution (.tar.gz) file.
31 Platform-specific notes follow.
33 ------------------------------------------------------------------------------
35 ------------------------------------------------------------------------------
37 Run-time package requirements:
39 gdbm, db4, or libdb (only needed for slocal(1))
40 readline (if you want readline support)
41 cyrus-sasl-lib / libsasl2 (if configured with --with-cyrus-sasl)
42 openssl-libs / libssl (if configured with --with-tls)
43 libcurl (if configured with --with-oauth)
45 Additional build-time package requirements:
46 ncurses-devel / libncurses5-devel
47 gdbm-devel, db4-devel or libdb-devel/libdb-dev (only needed for slocal(1))
48 readline-devel (if you want readline support)
49 cyrus-sasl-devel / libsasl2-dev (if configuring with --with-cyrus-sasl)
50 openssl-devel / libssl-dev (if configuring with --with-tls)
51 libcurl-devel / libcurl-dev (if configured with --with-oauth)
53 Test suite package requirements:
54 ncurses (tput is needed to run test/format/test-curses)
56 ------------------------------------------------------------------------------
58 ------------------------------------------------------------------------------
60 If configured with --with-tls on Mac OS 10.7 or later, there will be
61 compile warnings from mts/smtp/smtp.c about the deprecated OpenSSL
62 that is supplied with that system. nmh will build and run with that
63 OpenSSL, though it may be an old version. Alternatively, the OpenSSL
64 source code is available from http://www.openssl.org/source/. To
65 build 64-bit libraries, the OpenSSL configure command should start
67 ./Configure darwin64-x86_64-cc
69 To build nmh with those OpenSSL libraries, the CPPFLAGS and LDFLAGS
70 can be set by adding the following to the nmh configure command line,
71 or in the shell environment before calling configure or build_nmh:
72 CPPFLAGS='-D__arch64__ -IOpenSSL-include-path' LDFLAGS=-LOpenSSL-lib-path
74 ------------------------------------------------------------------------------
76 ------------------------------------------------------------------------------
78 Additional build-time package requirements:
80 ftp/curl (if configured with --with-oauth)
82 ------------------------------------------------------------------------------
84 ------------------------------------------------------------------------------
86 Run-time package requirements:
88 libncurses10 or libncursesw10
89 libgdbm4 (only needed for slocal(1))
90 libiconv or libiconv2 (if you want iconv support)
91 libreadline7 (if you want readline support)
92 libsasl2_3 (if configured with --with-cyrus-sasl)
93 openssl (if configured with --with-tls)
94 libcurl (if configured with --with-oauth)
96 Additional build-time package requirements:
97 libncurses-devel or libncursesw-devel
98 libgdbm4-devel (only needed for slocal(1))
99 libiconv-devel (if you want iconv support)
100 libreadline-devel (if you want readline support)
101 libsasl2-devel (if configuring with --with-cyrus-sasl)
102 openssl-devel (if configuring with --with-tls)
103 libcurl-devel (if configured with --with-oauth)
105 Older versions of libncurses-devel do not install /usr/include/curses.h,
106 /usr/include/term.h, and /usr/include/termcap.h. If yours does not,
107 either add symlinks in /usr/include/ to those files in its ncurses/
108 subdirectory, or build with:
109 make DEFAULT_INCLUDES='-I. -I/usr/include/ncurses'
111 Test suite package requirements:
112 ncurses (tput is needed to run test/format/test-curses)
114 Note that the -link switch to refile cannot be used on FAT32 and other
115 filesystems that do not support hard links.
117 ------------------------------------------------------------------------------
119 ------------------------------------------------------------------------------
121 Lots of problems have been reported with using HPUX `cc'. In particular,
122 problems with `scan' giving incorrect dates (everything is 01/00). It is
123 highly recommended that you use `gcc' instead.
125 ------------------------------------------------------------------------------
127 ------------------------------------------------------------------------------
129 Irix make is notoriously buggy. If you're using it, you should "touch
130 config.h.in" before configuring to prevent a problem where it tries to rebuild
131 targets that shouldn't be rebuilt. (Alternately, you can just use GNU make
132 instead of Irix make.)
134 ------------------------------------------------------------------------------
135 SunOS 4.1.1/4.1.3/4.1.4
136 ------------------------------------------------------------------------------
138 You can't use the C compiler that comes with SunOS 4 since it isn't ANSI C.
139 But nmh builds just fine with gcc.
141 ------------------------------------------------------------------------------
145 nmh-workers@nongnu.org