On Wed, Nov 28, 2018 at 11:00:33PM +1100, James Brown wrote: > > On 28 Nov 2018, at 10:38 pm, Herbert J. Skuhra wrote: > > > > On Wed, Nov 28, 2018 at 09:55:02PM +1100, James Brown wrote: > >> I have installed OpenSSL v1.1.1 via Homebrew. I’m trying to install > >> Postfix 3.3.2 but it always ends with: > >> > >> cc -I. -I../../include -DUSE_TLS -DUSE_SASL_AUTH > >> -DDEF_SERVER_SASL_TYPE=\"dovecot\" -DDEF_COMMAND_DIR=\"/usr/local/sbin\" > >> -DDEF_CONFIG_DIR=\"/usr/local/etc/postfix\" > >> -DDEF_DAEMON_DIR=\"/usr/local/libexec/postfix\" -DHAS_PCRE > >> -I/usr/local/opt//include -DHAS_SSL > >> -I/usr/local/Cellar/[email protected]/1.1.1/include/openssl -DHAS_MYSQL > >> -I/usr/local/opt/[email protected]/include/mysql -DBIND_8_COMPAT -DNO_NETINFO > >> -DRESOLVE_H_NEEDS_ARPA_NAMESER_COMPAT_H -DNO_EAI > >> -DDEF_SMTPUTF8_ENABLE=\"no\" -DHAS_DEV_URANDOM > >> -DDEF_MAILQ_PATH=\"/usr/local/bin/mailq\" > >> -DDEF_NEWALIAS_PATH=\"/usr/local/bin/newaliases\" > >> -DDEF_SENDMAIL_PATH=\"/usr/local/sbin/sendmail\" -UUSE_DYNAMIC_LIBS > >> -DDEF_SHLIB_DIR=\"no\" -UUSE_DYNAMIC_MAPS -Wmissing-prototypes -Wformat > >> -Wno-comment -g -O -I. -I../../include -DMACOSX -c abounce.c > >> In file included from abounce.c:187: > >> ./mail_params.h:20:10: fatal error: 'openssl/opensslv.h' file not found > >> #include <openssl/opensslv.h> /* OPENSSL_VERSION_NUMBER */ > >> ^~~~~~~~~~~~~~~~~~~~ > >> 1 error generated. > >> make: *** [abounce.o] Error 1 > >> > >> opensslv.h is at: > >> > >> $ locate opensslv.h > >> /usr/local/Cellar/openssl/1.0.2p/include/openssl/opensslv.h > >> /usr/local/Cellar/openssl/1.0.2q/include/openssl/opensslv.h > >> /usr/local/Cellar/[email protected]/1.1.1/include/openssl/opensslv.h > >> /usr/local/Cellar/[email protected]/1.1.1a/include/openssl/opensslv.h > >> > >> My Make script is: > >> > >> $ make -f Makefile.init makefiles CCARGS='-DUSE_TLS -DUSE_SASL_AUTH \ > >> -DDEF_SERVER_SASL_TYPE=\"dovecot\" \ > >> -DDEF_COMMAND_DIR=\"/usr/local/sbin\" \ > >> -DDEF_CONFIG_DIR=\"/usr/local/etc/postfix\" \ > >> -DDEF_DAEMON_DIR=\"/usr/local/libexec/postfix\" \ > >> -DHAS_PCRE -I/usr/local/opt//include \ > >> -DHAS_SSL -I/usr/local/opt/[email protected]/1.1.1/include \ > >> -DHAS_MYSQL -I/usr/local/opt/[email protected]/include/mysql' > >> AUXLIBS='-L/usr/local/lib -lpcre -lssl -lcrypto > >> -L/usr/local/opt/[email protected]/lib \ > >> -lmysqlclient -lz -lm' sendmail_path=/usr/local/sbin/sendmail > >> newaliases_path=/usr/local/bin/newaliases mailq_path=/usr/local/bin/mail > >> > >> I’ve change the DHAS_SSL a few times but keep getting the exact same > >> error. I’m sure it’s a simple thing to fix, but can’t get it to work. > >> > >> Any ideas? > > > > Have you really tried -I/usr/local/Cellar/[email protected]/1.1.1/include/ ? > > The build log shows -I/usr/local/Cellar/[email protected]/1.1.1/include/openssl. > > > > And why do you have multiple versions of openssl (1.0.2p vs 1.0.2q and > > 1.1.1 vs. 1.1.1a) installed? > > Thanks Herbert. > > Well, I thought that’s what I was using, but I’ve tried so many variations. > Removed the ‘/openssl’ and now I get: > > c/postfix\" -DHAS_PCRE -I/usr/local/opt//include -DHAS_SSL > -I/usr/local/Cellar/[email protected]/1.1.1/include -DHAS_MYSQL > -I/usr/local/opt/[email protected]/include/mysql -DBIND_8_COMPAT -DNO_NETINFO > -DRESOLVE_H_NEEDS_ARPA_NAMESER_COMPAT_H -DNO_EAI -DDEF_SMTPUTF8_ENABLE=\"no\" > -DHAS_DEV_URANDOM -DDEF_MAILQ_PATH=\"/usr/local/bin/mailq\" > -DDEF_NEWALIAS_PATH=\"/usr/local/bin/newaliases\" > -DDEF_SENDMAIL_PATH=\"/usr/local/sbin/sendmail\" -UUSE_DYNAMIC_LIBS > -DDEF_SHLIB_DIR=\"no\" -UUSE_DYNAMIC_MAPS -Wmissing-prototypes -Wformat > -Wno-comment -g -O -I. -I../../include -DMACOSX -o master master.o > master_conf.o master_ent.o master_sig.o master_avail.o master_spawn.o > master_service.o master_status.o master_listen.o master_vars.o > master_wakeup.o master_watch.o master_flow.o master_monitor.o > ../../lib/libglobal.a ../../lib/libutil.a -L/usr/local/lib -lpcre -lssl > -lcrypto -L/usr/local/opt/[email protected]/lib -lmysqlclient -lz -lm -flat_namespace > -lresolv > ld: library not found for -lssl > clang: error: linker command failed with exit code 1 (use -v to see > invocation) > make: *** [master] Error 1 > > Homebrew installed openssl 1.0.2 when I installed either stunnel or [email protected] > as Homebrew won’t let me uninstall that version as they are using it. Suppose > I’ll have to work out how to have Homebrew install them with [email protected] > somehow.
You also have to add -L/usr/local/Cellar/[email protected]/1.1.1/lib (in front of -lssl -lcrypto). You probably should use Openssl 1.1.1a (instead of 1.1.1) because it includes fixes for known vulnerabilities. -- Herbert
