Discussion:
_pcre_free_study
Larry Landrum
2014-05-08 21:02:51 UTC
Permalink
I can't compile and install Postfix 2.10.3 and above with pcre 8.35 on
Mac OS X 10.9.2. Postfix 2.10.2 works. Using this same make command on
both versions:

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/include \
-DHAS_SSL -I/usr/include/openssl \
-DHAS_MYSQL -I/usr/local/mysql/include' \
AUXLIBS='-L/usr/lib -llber -lresolv -L/usr/local/lib \
-L/usr/local/lib -lpcre -lssl -L/usr/local/mysql/lib \
-lmysqlclient -lz -lm'


Then "sudo make install" with 2.11.0 ends like this:


cc -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/include -DHAS_SSL -I/usr/include/openssl -DHAS_MYSQL
-I/usr/local/mysql/include -Wmissing-prototypes -Wformat -Wno-comment
-DBIND_8_COMPAT -DNO_NETINFO -DRESOLVE_H_NEEDS_ARPA_NAMESER_COMPAT_H
-g -O -I. -I../../include -DMACOSX -o sendmail sendmail.o
../../lib/libglobal.a ../../lib/libutil.a -L/usr/lib -llber -lresolv
-L/usr/local/lib -L/usr/local/lib -lpcre -lssl -L/usr/local/mysql/lib
-lmysqlclient -lz -lm -flat_namespace -lresolv
Undefined symbols for architecture x86_64:
"_pcre_free_study", referenced from:
_dict_pcre_open in libutil.a(dict_pcre.o)
_dict_pcre_close in libutil.a(dict_pcre.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [sendmail] Error 1
make: *** [update] Error 1

In an effort to get Postfix 2.11.0 to compile, I commented out the
definition of PCRE_STUDY_JIT_COMPILE in src/util/dict_pcre.c and ran
"sudo make install" again and it worked, but I'm not sure that was a
good solution. Is there something better to do to get Postfix 2.11.0
compiled? I don't think I really need the JIT feature.
Wietse Venema
2014-05-08 21:14:18 UTC
Permalink
Post by Larry Landrum
_dict_pcre_open in libutil.a(dict_pcre.o)
_dict_pcre_close in libutil.a(dict_pcre.o)
Your PCRE.H include file is for a newer PCRE version than the libpcre
OBJECT LIBRARY file.

Wietse

Loading...