Yesterday I tried to compile the newest PHP 5.4.14 on an opensuse 12.2 system but got stuck when configure was at the IMAP check.
checking for IMAP support... yes
checking for IMAP Kerberos support... no
checking for IMAP SSL support... yes
checking for utf8_mime2text signature... new
checking for U8T_DECOMPOSE...
checking for pam_start in -lpam... no
checking for crypt in -lcrypt... yes
checking whether rfc822_output_address_list function present... no
checking whether build with IMAP works... no
configure: error: build test failed. Please check the config.log for details.
At the begin I thought, that's easy to solve, as I already had this error before. The IMAP development files have a funny name called libc-client, at least that's what it was in the past. See my post "PHP compilation fails on IMAP U8T_DECOMPOSE: The Debian solution" for more information. But the imap dev files (they're now called imap-devel on opensuse) are already installed:
rpm -qa | grep imap-dev
imap-devel-2007e_suse-12.1.2.x86_64
# rpm -qa| grep libc-client
libc-client2007e_suse-2007e_suse-12.1.2.x86_64
ll /usr/lib64/ | grep libc-client
lrwxrwxrwx 1 root root 13 May 3 18:58 c-client.a -> libc-client.a
-rw-r--r-- 1 root root 4887050 Jul 16 2012 libc-client.a
lrwxrwxrwx 1 root root 25 May 3 18:58 libc-client.so -> libc-client.so.2007e_suse
-rwxr-xr-x 1 root root 1108008 Jul 16 2012 libc-client.so.2007e_suse
So I took a look at the config.log, at the relevant information:
| #define HAVE_IMAP2000 1
| #define HAVE_IMAP2004 1
| /* end confdefs.h. */
|
| #include
| #include
|
| int
| main ()
| {
|
| SIZEDTEXT *src, *dst;
| utf8_mime2text(src, dst);
|
| ;
| return 0;
| }
configure:65718: result: new
configure:65731: checking for U8T_DECOMPOSE
configure:65761: cc -c -I/usr/include/imap conftest.c >&5
configure:65768: $? = 0
configure:65788: result:
configure:65927: checking for pam_start in -lpam
configure:65962: cc -o conftest -I/usr/include -g -O2 -fvisibility=hidden -L/usr/lib64 conftest.c -lpam -lfreetype -lpng -lz -ljpeg -lcurl -lbz2 -lz -lrt -lm -ldl -lnsl -lxml2 -lz -lm -lssl -lcrypto -lcurl -lxml2 -lz -lm -lssl -lcrypto >&5
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: cannot find -lpam
collect2: error: ld returned 1 exit status
configure:65969: $? = 1
configure: failed program was:
This means that the IMAP check was actually successful, at the c-client header files were successfully included. But another message is very important in that output: "cannot find -lpam".
That's interesting... the information in the ./configure output is actually very misleading and makes one think there's a problem with the imap/libc-client devel files, but it actually seems to be a missing pam devel!
Install pam-devel and try again to configure:
zypper in pam-devel
[...]
checking for iconv support... yes
checking for iconv... yes
checking if iconv is glibc's... yes
checking if iconv supports errno... yes
checking if your cpp allows macro usage in include lines... yes
checking for IMAP support... yes
checking for IMAP Kerberos support... no
checking for IMAP SSL support... yes
checking for utf8_mime2text signature... new
checking for U8T_DECOMPOSE...
checking for pam_start in -lpam... yes
checking for crypt in -lcrypt... yes
checking whether rfc822_output_address_list function present... yes
checking whether build with IMAP works... yes
checking for InterBase support... no
checking whether to enable internationalization support... yes
[...]
Finally it ran through! From the beginning it actually required the pam-devel that the build with imap would work.
Side note: I also tried to compile imap from source (ftp://ftp.cac.washington.edu/imap/imap-2007f.tar.gz) to see if there was a problem in the opensuse devel files and the compilation failed with the following error:
`cat CCTYPE` -c `cat CFLAGS` `cat OSCFLAGS` -c osdep.c
osdep.c:89:31: fatal error: security/pam_appl.h: No such file or directory
compilation terminated.
That was another hint, that pam-devel was missing.
No comments yet.
AWS Android Ansible Apache Apple Atlassian BSD Backup Bash Bluecoat CMS Chef Cloud Coding Consul Containers CouchDB DB DNS Database Databases Docker ELK Elasticsearch Filebeat FreeBSD Galera Git GlusterFS Grafana Graphics HAProxy HTML Hacks Hardware Icinga Influx Internet Java KVM Kibana Kodi Kubernetes LVM LXC Linux Logstash Mac Macintosh Mail MariaDB Minio MongoDB Monitoring Multimedia MySQL NFS Nagios Network Nginx OSSEC OTRS Office OpenSearch PGSQL PHP Perl Personal PostgreSQL Postgres PowerDNS Proxmox Proxy Python Rancher Rant Redis Roundcube SSL Samba Seafile Security Shell SmartOS Solaris Surveillance Systemd TLS Tomcat Ubuntu Unix VMWare VMware Varnish Virtualization Windows Wireless Wordpress Wyse ZFS Zoneminder