[horde] Issues installing Horde Groupware on new Rocky Linux 8 VPS

Ralf Lang lang at b1-systems.de
Wed Oct 27 06:45:12 UTC 2021


Hi Louis,

Am 26.10.21 um 19:04 schrieb Louis-Philippe Allard:
> Hello Maillist!
>
> So I am trying to install Horde Groupware on a brand new VPS based on 
> Rocky Linux 8 (replacement of Centos 8 which is unfortunately going 
> out of existence in less than 2 months)...
>
> I have followed the instructions of 
> "https://www.horde.org/apps/groupware/docs/INSTALL#id3" which have 
> worked out very well until I ran the command :
>
> "pear install -a horde/groupware"
>
> which resulted in the following errors: 
> ******************************************* running: make /bin/sh 
> /var/tmp/pear-build-sshuser3aCIQy/APC-3.1.13/libtool --mode=compile cc 
> -D_GNU_SOURCE -I. -I/var/tmp/APC -DPHP_ATOM_INC 
> -I/var/tmp/pear-build-sshuser3aCIQy/APC-3.1.13/include 
> -I/var/tmp/pear-build-sshuser3aCIQy/APC-3.1.13/main -I/var/tmp/APC 
> -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM 
> -I/usr/include/php/Zend -I/usr/include/php/ext 
> -I/usr/include/php/ext/date/lib  -DHAVE_CONFIG_H  -g -O2   -c 
> /var/tmp/APC/apc.c -o apc.lo libtool: compile:  cc -D_GNU_SOURCE -I. 
> -I/var/tmp/APC -DPHP_ATOM_INC 
> -I/var/tmp/pear-build-sshuser3aCIQy/APC-3.1.13/include 
> -I/var/tmp/pear-build-sshuser3aCIQy/APC-3.1.13/main -I/var/tmp/APC 
> -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM 
> -I/usr/include/php/Zend -I/usr/include/php/ext 
> -I/usr/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c 
> /var/tmp/APC/apc.c  -fPIC -DPIC -o .libs/apc.o In file included from 
> /var/tmp/APC/apc_main.h:38,                  from 
> /var/tmp/APC/apc_compile.h:43,                  from 
> /var/tmp/APC/apc_cache.h:40,                  from 
> /var/tmp/APC/apc.c:36: /var/tmp/APC/apc_serializer.h: In function 
> ‘apc_register_serializer’: /var/tmp/APC/apc_serializer.h:45:33: 
> warning: passing argument 1 of ‘zend_get_constant’ from incompatible 
> pointer type [-Wincompatible-pointer-types]  #define 
> APC_SERIALIZER_CONSTANT "\000apc_register_serializer-" 
> APC_SERIALIZER_ABI ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
> /var/tmp/APC/apc_serializer.h:64:27: note: in expansion of macro 
> ‘APC_SERIALIZER_CONSTANT’      if 
> (zend_get_constant(APC_SERIALIZER_CONSTANT, 
> sizeof(APC_SERIALIZER_CONSTANT)-1, &apc_magic_constant TSRMLS_CC)) { 
>                            ^~~~~~~~~~~~~~~~~~~~~~~ In file included 
> from /usr/include/php/main/php.h:472,                  from 
> /var/tmp/APC/apc.h:61,                  from /var/tmp/APC/apc.c:34: 
> /usr/include/php/Zend/zend_constants.h:68:16: note: expected 
> ‘zend_string *’ {aka ‘struct _zend_string *’} but argument is of type 
> ‘char *’  ZEND_API zval *zend_get_constant(zend_string *name); 
>                 ^~~~~~~~~~~~~~~~~ In file included from 
> /var/tmp/APC/apc_main.h:38,                  from 
> /var/tmp/APC/apc_compile.h:43,                  from 
> /var/tmp/APC/apc_cache.h:40,                  from 
> /var/tmp/APC/apc.c:36: /var/tmp/APC/apc_serializer.h:64:9: error: too 
> many arguments to function ‘zend_get_constant’      if 
> (zend_get_constant(APC_SERIALIZER_CONSTANT, 
> sizeof(APC_SERIALIZER_CONSTANT)-1, &apc_magic_constant TSRMLS_CC)) { 
>          ^~~~~~~~~~~~~~~~~ In file included from 
> /usr/include/php/main/php.h:472,                  from 
> /var/tmp/APC/apc.h:61,                  from /var/tmp/APC/apc.c:34: 
> /usr/include/php/Zend/zend_constants.h:68:16: note: declared here 
>  ZEND_API zval *zend_get_constant(zend_string *name);                 
> ^~~~~~~~~~~~~~~~~ In file included from /var/tmp/APC/apc.c:36: 
> /var/tmp/APC/apc_cache.h: At top level: 
> /var/tmp/APC/apc_cache.h:136:9: error: unknown type name ‘zend_uint’ 
>          zend_uint *exec_refcount;   /* refcount member of 
> zend_op_array refreshed before execution */ ^~~~~~~~~ 
> /var/tmp/APC/apc.c:47:13: fatal error: ext/standard/php_smart_str.h: 
> No such file or directory  # include "ext/standard/php_smart_str.h" 
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. make: *** 
> [Makefile:195: apc.lo] Error 1 ERROR: `make' failed 
> *******************************************  I am led to believe that 
> APC is deprecated and no longer available in modern PHP versions.  The 
> VPS is running php 7.2.34:  PHP 7.2.34 (cli) (built: Oct 20 2021 
> 09:46:52) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine 
> v3.2.0, Copyright (c) 1998-2018 Zend Technologies  And the following 
> PHP modules are loaded: ******************************************* 
> [PHP Modules] apc apcu bcmath bz2 calendar Core ctype curl date dom 
> exif fileinfo filter ftp gd geoip gettext hash iconv igbinary imagick 
> intl json libxml mbstring mcrypt memcache memcached msgpack mysqli 
> mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar posix raphf 
> readline Reflection session shmop SimpleXML sockets SPL sqlite3 
> standard sysvmsg sysvsem sysvshm tidy tokenizer wddx xml xmlreader 
> xmlwriter xsl zip zlib zstd  [Zend Modules] 
> *******************************************  At first I was running 
> PHP 8.0 but quickly discovered that Horde wasn't compatible with it 
> and restarted from scratch with a VM backup (thanks to Proxmox).  What 
> can I do from there?  I googled this for over 2 hours without 
> successfully finding a solution or something that remotely looked 
> clean enough to do....  Any more data or input on current VPS, please 
> ask!  Thanks!
>  Louis-Philippe Allard
> lp.allard.1 at gmail.com

This is not really a Horde issue. APC is dead, don't use it. Modern PHP 
has the new APCu extension for userland of the old APC module. If you 
are not interested in userland (data cache), you don't need APCu. If you 
want to use the bytecode cache, use the PHP opcache extension.

If you struggle setting up the pear environment, may I suggest running 
the containerized version of horde instead? It has some changes and 
extensions not yet part of the official horde tree, but it's quite stable.

Regards


Ralf


-- 
Ralf Lang
Linux Consultant / Developer
Tel.: +49-170-6381563
Mail: lang at b1-systems.de
B1 Systems GmbH
Osterfeldstraße 7 / 85088 Vohburg / http://www.b1-systems.de
GF: Ralph Dehner / Unternehmenssitz: Vohburg / AG: Ingolstadt,HRB 3537



More information about the horde mailing list