Package Details: php74 7.4.29-1

Git Clone URL: https://aur.archlinux.org/php74.git (read-only, click to copy)
Package Base: php74
Description: PHP. A general-purpose scripting language that is especially suited to web development
Upstream URL: http://www.php.net
Licenses: PHP
Submitter: tompear
Maintainer: el_aur
Last Packager: el_aur
Votes: 7
Popularity: 0.45
First Submitted: 2021-01-31 11:48 (UTC)
Last Updated: 2022-04-14 10:02 (UTC)

Pinned Comments

el_aur commented on 2022-02-02 08:43 (UTC) (edited on 2022-02-02 18:11 (UTC) by el_aur)

Created binary repository on build.opensuse.org

https://build.opensuse.org/project/show/home:el:archphp

Import PGP key first:

curl -s https://download.opensuse.org/repositories/home:/el:/archphp/Arch/x86_64/home_el_archphp_Arch.key | sudo pacman-key -a /dev/stdin

Append to /etc/pacman.conf:

[home_el_archphp_Arch]
SigLevel = Required TrustAll
Server = https://download.opensuse.org/repositories/home:/el:/archphp/Arch/x86_64/

Refresh packages database

pacman -Sy

Now search for php packages you need:

pacman -Ss php74

Install with pacman -S packages you need or all PHP 8.1 packages with:

sudo pacman -S $(pacman -Ssq | grep '^php74')

el_aur commented on 2022-01-27 12:06 (UTC) (edited on 2022-02-01 21:33 (UTC) by el_aur)

Read Carefully! Breaking changes in compare with native PHP package

  1. Console version /usr/bin/php74 is installed with php74-cli subpackage, php74 doesn't include it anymore!!!

  2. PEAR and PECL are available as php74-pear and php74-pecl subpackages

  3. All shared modules are respresented as stand-alone subpackages and are not included with php74 package anymore.

  4. No more extensions in php.ini itself! Separate INI files for each extension are placed in /etc/php74/conf.d They are loaded in correct order according to priority

  5. Modules: mysqlnd, mysqli and pdo_mysql are moved to single package php74-mysql

  6. php74-xsl requires php74-xml and php74-dom to be installed

  7. php74-enchant build with dependencies: libvoikko, hspell, hunspell, nuspell, aspell

Latest Comments

archn00b commented on 2022-04-09 17:14 (UTC) (edited on 2022-05-13 22:13 (UTC) by archn00b)

Has the signature changed?

error: php74-intl: signature for "home:el OBS Project <home:el@build.opensuse.org>" is invalid

aureolebigben commented on 2022-02-08 08:54 (UTC)

@tompear thank you !

tompear commented on 2022-02-03 14:37 (UTC)

@aureolebigben you have to install php74-cli, its now a separate package.

aureolebigben commented on 2022-02-03 14:26 (UTC)

Where is the php74 executable after install ?

Before, php executable was in /usr/bin. But after update i don't find it anywhere.

Now in /usr/bin i only have php-config74 php-fpm74 phpize74.

el_aur commented on 2022-02-02 08:43 (UTC) (edited on 2022-02-02 18:11 (UTC) by el_aur)

Created binary repository on build.opensuse.org

https://build.opensuse.org/project/show/home:el:archphp

Import PGP key first:

curl -s https://download.opensuse.org/repositories/home:/el:/archphp/Arch/x86_64/home_el_archphp_Arch.key | sudo pacman-key -a /dev/stdin

Append to /etc/pacman.conf:

[home_el_archphp_Arch]
SigLevel = Required TrustAll
Server = https://download.opensuse.org/repositories/home:/el:/archphp/Arch/x86_64/

Refresh packages database

pacman -Sy

Now search for php packages you need:

pacman -Ss php74

Install with pacman -S packages you need or all PHP 8.1 packages with:

sudo pacman -S $(pacman -Ssq | grep '^php74')

voidspawn commented on 2022-02-02 07:44 (UTC)

thx for the help

it was php74-dom

then php74-ctype and php74-phar and then it all worked(if it help others)

el_aur commented on 2022-02-01 17:57 (UTC)

added even more deps to enchant: libvoikko hspell hunspell nuspell aspell

el_aur commented on 2022-02-01 15:42 (UTC)

@tompear thanks for sharing details, will update pkgbuilds soon :)

tompear commented on 2022-02-01 15:17 (UTC) (edited on 2022-02-01 15:21 (UTC) by tompear)

Sorry, my bad. This has nothing with xsl, its enchant.

php74 -i | grep enchant
/etc/php74/conf.d/20-enchant.ini,
enchant
enchant support => enabled
nuspell => Nuspell Provider => /usr/lib/enchant-2/enchant_nuspell.so
aspell => Aspell Provider => /usr/lib/enchant-2/enchant_aspell.so
hunspell => Hunspell Provider => /usr/lib/enchant-2/enchant_hunspell.so
hspell => Hspell Provider => /usr/lib/enchant-2/enchant_hspell.so
voikko => Voikko Provider => /usr/lib/enchant-2/enchant_voikko.so

And without nuspell installed:

ldd /usr/lib/enchant-2/enchant_nuspell.so
    linux-vdso.so.1 (0x00007ffc36135000)
    libenchant-2.so.2 => /usr/lib/libenchant-2.so.2 (0x00007f8a03adf000)
    libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007f8a039a3000)
    libnuspell.so.5 => not found
    libicuuc.so.70 => /usr/lib/libicuuc.so.70 (0x00007f8a037a7000)
    libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f8a03591000)
    libc.so.6 => /usr/lib/libc.so.6 (0x00007f8a033c5000)
    libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f8a033a8000)
    libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00007f8a033a1000)
    libpcre.so.1 => /usr/lib/libpcre.so.1 (0x00007f8a0332a000)
    libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f8a03309000)
    libicudata.so.70 => /usr/lib/libicudata.so.70 (0x00007f8a016ed000)
    libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f8a016e6000)
    libm.so.6 => /usr/lib/libm.so.6 (0x00007f8a015a0000)
    /usr/lib64/ld-linux-x86-64.so.2 (0x00007f8a03b19000)

But without nuspell installed php74-enchant works so false alert.

el_aur commented on 2022-02-01 14:41 (UTC) (edited on 2022-02-01 14:47 (UTC) by el_aur)

@tompear. Interesting. grep -ri nuspell php-7.4.27 on php 7.4 sources gives nothing. Sure you have no 3rd party modules installed?

$ for i in /usr/lib/php74/modules/*.so ; do b=$(readelf -a $i | grep -i library | grep spell); if [[ ! -z $b ]]; then echo $i ; echo $b; fi; done
/usr/lib/php74/modules/pspell.so
0x0000000000000001 (NEEDED) Shared library: [libaspell.so.15] 0x0000000000000001 (NEEDED) Shared library: [libpspell.so.15] 0x000000000000000e (SONAME) Library soname: [pspell.so]

I see only one module is referencing spell substring, but no nuspell

XSL module:

$ readelf -a /usr/lib/php74/modules/xsl.so  | grep -i shared
  Type:                              DYN (Shared object file)
 0x0000000000000001 (NEEDED)             Shared library: [libxslt.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libxml2.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libexslt.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]

INTL:

$ readelf -a /usr/lib/php74/modules/intl.so  | grep -i shared
  Type:                              DYN (Shared object file)
 0x0000000000000001 (NEEDED)             Shared library: [libicuio.so.70]
 0x0000000000000001 (NEEDED)             Shared library: [libicui18n.so.70]
 0x0000000000000001 (NEEDED)             Shared library: [libicuuc.so.70]
 0x0000000000000001 (NEEDED)             Shared library: [libicudata.so.70]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]

tompear commented on 2022-02-01 11:14 (UTC) (edited on 2022-02-01 11:15 (UTC) by tompear)

I found something like that (Arch Linux and Manjaro):

php74 -i | grep xsl
/etc/php74/conf.d/20-xsl.ini,

** (process:2462442): WARNING **: 11:48:49.088: Error loading plugin: 
libnuspell.so.5: cannot open shared object file: No such file or directory

xsl
libxslt Version => 1.1.34
libxslt compiled against libxml Version => 2.9.12
libexslt Version => 1.1.34

To resolve this i installed 'nuspell' package. So i think it should be added as the dependency. It didnt stop loading of xsl but this message is visible when phpinfo() is in action.

tompear commented on 2022-02-01 11:08 (UTC)

AUR is Arch Users Repositiory, if it works under Manjaro you have luck, if it dont, you dont have :)

But in this situation i think you have to install php74-dom

voidspawn commented on 2022-02-01 10:36 (UTC) (edited on 2022-02-01 10:37 (UTC) by voidspawn)

look like the newest update broken xsl

PHP Warning:  PHP Startup: Unable to load dynamic library 'xsl.so' (tried: /usr/lib/php74/modules/xsl.so (/usr/lib/php74/modules/xsl.so: undefined symbol: php_dom_create_object), /usr/lib/php74/modules/xsl.so.so (/usr/lib/php74/modules/xsl.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Class 'DOMDocument' not found

i install a few packages that just works, but the xsl.so don't

aur/php74-xdebug 3.1.1-1 (+0 0.00) (Installed)
aur/php74-mcrypt 1.0.4-3 (+2 0.00) (Installed)
aur/php74-pdo 7.4.27-6 (+5 0.87) (Installed)
aur/php74 7.4.27-6 (+5 0.87) (Installed)
aur/php74-openssl 7.4.27-6 (+5 0.87) (Installed)
aur/php74-xsl 7.4.27-6 (+5 0.87) (Installed)
aur/php74-mysql 7.4.27-6 (+5 0.87) (Installed)
aur/php74-xml 7.4.27-6 (+5 0.87) (Installed)
aur/php74-iconv 7.4.27-6 (+5 0.87) (Installed)
aur/php74-cli 7.4.27-6 (+5 0.87) (Installed)
aur/php74-intl 7.4.27-6 (+5 0.87) (Installed)
aur/php74-gd 7.4.27-6 (+5 0.87) (Installed)
aur/php74-fpm 7.4.27-6 (+5 0.87) (Installed)
aur/php74-soap 7.4.27-6 (+5 0.87) (Installed)
aur/php74-curl 7.4.27-6 (+5 0.87) (Installed)
aur/php74-apache 7.4.27-6 (+5 0.87) (Installed)

i am using Manjaro and i did try the comment with the yay -Rnsc and remove it all and reinstall it all, still a problem, what am i missing here ?? PS: the file is in the usr lib php74 modules folder

tompear commented on 2022-02-01 09:06 (UTC)

This is funny but on my second system (Manjaro) there was some more failed tests. But there is what i did on it (i am using yay as my wrapper for pacman):

yay -Rnsc php74
yay -Sc --aur
yay -S php74

And voila, all is OK.

el_aur commented on 2022-02-01 08:43 (UTC)

Updated build. Disabled failing test and sendmail check

hoax commented on 2022-01-31 10:10 (UTC)

@tompear thanks but didn't work for me, still the same error.

tompear commented on 2022-01-31 09:43 (UTC)

@hoax try to uninstall existing version of php74 and install it again. I did it and all tests were done as expected and installation finished properly. I dont know why this one test were failing again and again.

Make copy of /etc/php74, if you uninstall php74 some files will be removed so if you dont want to configure all from the beginning copy it. Reconfiguration didnt take much time.

hoax commented on 2022-01-31 08:51 (UTC)

can confirm tompear's build issue.

why exactly were those structural changes necessary?

el_aur commented on 2022-01-27 21:28 (UTC)

@continum mysqli, pdo_mysql are combined to singe php74-mysql subpackage

continum4 commented on 2022-01-27 19:07 (UTC)

What happened to mysqli?, it is not available in the modules.

el_aur commented on 2022-01-27 12:06 (UTC) (edited on 2022-02-01 21:33 (UTC) by el_aur)

Read Carefully! Breaking changes in compare with native PHP package

  1. Console version /usr/bin/php74 is installed with php74-cli subpackage, php74 doesn't include it anymore!!!

  2. PEAR and PECL are available as php74-pear and php74-pecl subpackages

  3. All shared modules are respresented as stand-alone subpackages and are not included with php74 package anymore.

  4. No more extensions in php.ini itself! Separate INI files for each extension are placed in /etc/php74/conf.d They are loaded in correct order according to priority

  5. Modules: mysqlnd, mysqli and pdo_mysql are moved to single package php74-mysql

  6. php74-xsl requires php74-xml and php74-dom to be installed

  7. php74-enchant build with dependencies: libvoikko, hspell, hunspell, nuspell, aspell

pfrenssen commented on 2022-01-26 21:32 (UTC)

@el_aur There has been a big overhaul of the way PHP 7.4 needs to be installed, and many things work differently now. Would it be possible to publish a list of breaking changes?

el_aur commented on 2022-01-26 11:48 (UTC) (edited on 2022-01-26 16:44 (UTC) by el_aur)

@tompear: built in clean chroot and got

=====================================================================
Number of tests : 3672              3603
Tests skipped   :   69 (  1.9%) --------
Tests warned    :    0 (  0.0%) (  0.0%)
Tests failed    :    0 (  0.0%) (  0.0%)
Expected fail   :    7 (  0.2%) (  0.2%)
Tests passed    : 3596 ( 97.9%) ( 99.8%)
---------------------------------------------------------------------
Time taken      :  159 seconds
=====================================================================

=====================================================================
EXPECTED FAILED TEST SUMMARY
---------------------------------------------------------------------
Test open_basedir configuration [tests/security/open_basedir_linkinfo.phpt]  XFAIL REASON: BUG: open_basedir cannot delete symlink to prohibited file. See also
bugs 48111 and 52176.
Inconsistencies when accessing protected members [Zend/tests/access_modifiers_008.phpt]  XFAIL REASON: Discussion: http://marc.info/?l=php-internals&m=120221184420957&w=2
Inconsistencies when accessing protected members - 2 [Zend/tests/access_modifiers_009.phpt]  XFAIL REASON: Discussion: http://marc.info/?l=php-internals&m=120221184420957&w=2
Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770.phpt]  XFAIL REASON: See Bug #48770
Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770_2.phpt]  XFAIL REASON: See Bug #48770
Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770_3.phpt]  XFAIL REASON: See Bug #48770
Initial value of static var in method depends on the include time of the class definition [Zend/tests/method_static_var.phpt]  XFAIL REASON: Maybe not a bug
=====================================================================

Results in non-chroot:

=====================================================================
Number of tests : 3672              3601
Tests skipped   :   71 (  1.9%) --------
Tests warned    :    0 (  0.0%) (  0.0%)
Tests failed    :    0 (  0.0%) (  0.0%)
Expected fail   :    7 (  0.2%) (  0.2%)
Tests passed    : 3594 ( 97.9%) ( 99.8%)
---------------------------------------------------------------------
Time taken      :  163 seconds
=====================================================================

=====================================================================
EXPECTED FAILED TEST SUMMARY
---------------------------------------------------------------------
Test open_basedir configuration [tests/security/open_basedir_linkinfo.phpt]  XFAIL REASON: BUG: open_basedir cannot delete symlink to prohibited file. See also
bugs 48111 and 52176.
Inconsistencies when accessing protected members [Zend/tests/access_modifiers_008.phpt]  XFAIL REASON: Discussion: http://marc.info/?l=php-internals&m=120221184420957&w=2
Inconsistencies when accessing protected members - 2 [Zend/tests/access_modifiers_009.phpt]  XFAIL REASON: Discussion: http://marc.info/?l=php-internals&m=120221184420957&w=2
Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770.phpt]  XFAIL REASON: See Bug #48770
Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770_2.phpt]  XFAIL REASON: See Bug #48770
Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770_3.phpt]  XFAIL REASON: See Bug #48770
Initial value of static var in method depends on the include time of the class definition [Zend/tests/method_static_var.phpt]  XFAIL REASON: Maybe not a bug
=====================================================================

el_aur commented on 2022-01-26 10:49 (UTC)

@tompear looking on this issue

tompear commented on 2022-01-26 10:29 (UTC) (edited on 2022-01-26 10:33 (UTC) by tompear)

Cant build php74 now cus one test is failing all time:

=====================================================================
Number of tests : 3672              3601
Tests skipped   :   71 (  1.9%) --------
Tests warned    :    0 (  0.0%) (  0.0%)
Tests failed    :    1 (  0.0%) (  0.0%)
Expected fail   :    7 (  0.2%) (  0.2%)
Tests passed    : 3593 ( 97.8%) ( 99.8%)
---------------------------------------------------------------------
Time taken      :   65 seconds
=====================================================================

=====================================================================
EXPECTED FAILED TEST SUMMARY
---------------------------------------------------------------------
Inconsistencies when accessing protected members 
[Zend/tests/access_modifiers_008.phpt]  XFAIL REASON: Discussion: 
http://marc.info/?l=php-internals&m=120221184420957&w=2
Inconsistencies when accessing protected members - 2 
[Zend/tests/access_modifiers_009.phpt]  XFAIL REASON: Discussion: 
http://marc.info/?l=php-internals&m=120221184420957&w=2
Test open_basedir configuration [tests/security/open_basedir_linkinfo.phpt]  
XFAIL REASON: BUG: open_basedir cannot delete symlink to prohibited file. 
See also
bugs 48111 and 52176.
Bug #48770 (call_user_func_array() fails to call parent from inheriting 
class) [Zend/tests/bug48770.phpt]  XFAIL REASON: See Bug #48770
Bug #48770 (call_user_func_array() fails to call parent from inheriting 
class) [Zend/tests/bug48770_2.phpt]  XFAIL REASON: See Bug #48770
Bug #48770 (call_user_func_array() fails to call parent from inheriting 
class) [Zend/tests/bug48770_3.phpt]  XFAIL REASON: See Bug #48770
Initial value of static var in method depends on the include time of the 
class definition [Zend/tests/method_static_var.phpt]  XFAIL REASON: Maybe 
not a bug
=====================================================================

=====================================================================
FAILED TEST SUMMARY
---------------------------------------------------------------------
Bug #79919 (Stack use-after-scope in define()) [Zend/tests/bug79919.phpt]
=====================================================================
make: *** [Makefile:307: test] Błąd 1
==> BŁĄD: Wystąpił błąd w check().
Przerywam...
-> błąd podczas budowania: php74 (php74 php74-apache php74-cgi php74- 
dblib php74-embed php74-enchant php74-fpm php74-gd php74-imap php74-intl 
php74-pdo php74-odbc php74-pgsql php74-phpdbg php74-pspell php74-snmp php74- 
sodium php74-sqlite php74-tidy php74-xml php74-xsl)`

el_aur commented on 2022-01-25 16:47 (UTC) (edited on 2022-01-26 01:57 (UTC) by el_aur)

@zm80 install php74-cli subpackage

zm80 commented on 2022-01-25 16:29 (UTC)

By updating to version "7.4.27-6" the binary "/usr/bin/php74" is gone (deleted)...

el_aur commented on 2022-01-25 12:56 (UTC)

@tompear thanks!

tompear commented on 2022-01-25 12:08 (UTC)

@el_aur have a good development time of this package.

el_aur commented on 2022-01-25 09:29 (UTC)

@tompear yeah, would be nice ;)

tompear commented on 2022-01-23 21:11 (UTC)

You can take this package ... if You want ;)

el_aur commented on 2022-01-21 12:39 (UTC)

I have made big work with PHP build - wrote improved php74 pkgbuild with greater modularization and my patches + patches from debian etc. Wanna merge with your package. You can look at my php81 package in AUR and others. Please make me comaintainer :)

malacology commented on 2021-12-03 00:48 (UTC)

please use provides

tompear commented on 2021-10-24 16:52 (UTC)

Execute this in console:

gpg --recv-keys 910DEB46F53EA312

malacology commented on 2021-10-23 21:21 (UTC)

==> Verifying source file signatures with gpg...
    php-7.4.25.tar.xz ... FAILED (unknown public key 910DEB46F53EA312)
==> ERROR: One or more PGP signatures could not be verified!
Finished with result: exit-code
Main processes terminated with: code=exited/status=1

tompear commented on 2021-09-23 09:03 (UTC)

Thanks for the tip, i am working on it right now and will add fixed release of package asap.

Raniz commented on 2021-09-23 08:21 (UTC) (edited on 2021-09-23 08:34 (UTC) by Raniz)

Apply the following patch and it builds with gd-2.3.3:

diff --git a/PKGBUILD b/PKGBUILD
index dd2d621..03c7e95 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -66,6 +66,7 @@ source=(
   'php.ini.patch'
   'phpize.m4.patch'
   'enchant-2.patch'
+  'gd-2.3.3.patch'
 )
 sha256sums=(
   'cea52313fcffe56343bcd3c66dbb23cd5507dc559cc2e3547cf8f5452e88a05d'
@@ -77,6 +78,8 @@ sha256sums=(
   '3a6d101962db9d311d9bba3b561b9dfd417701d9d2b607b70b9df218f6e029d7'
   '354b1d5fd83e9902c6a4f7ca5d2101631bd67404f3c55a7194d9a6862656b479'
   'd94d22ad8bcd13829addda84e9de6b73fa04be9bc6da8622086c7e19c97ab724'
+  'baa45823805da7f908a3d9cf800b0ddb1cd8c8fb1a605542fbdc7bc7596f0a96'
+
 )

 validpgpkeys=(
@@ -92,6 +95,7 @@ prepare() {
   patch -p0 -i ${srcdir}/php.ini.patch
   patch -p0 -i ${srcdir}/phpize.m4.patch
   patch -p0 -i ${srcdir}/enchant-2.patch
+  patch -p0 -i ${srcdir}/gd-2.3.3.patch
   autoconf

   rm tests/output/stream_isatty_*.phpt
diff --git a/gd-2.3.3.patch b/gd-2.3.3.patch
new file mode 100644
index 0000000..f265f6e
--- /dev/null
+++ b/gd-2.3.3.patch
@@ -0,0 +1,47 @@
+diff --git a/ext/gd/gd.c b/ext/gd/gd.c
+index 336a739692..a32dfaa64b 100644
+--- ext/gd/gd.c
++++ ext/gd/gd.c
+@@ -91,6 +91,10 @@ static int le_gd, le_gd_font;
+ #define M_PI 3.14159265358979323846
+ #endif
+ 
++/* don't used libgd constants, not used, so going to be removed */
++#define PHP_GD_FLIP_HORIZONTAL 1
++#define PHP_GD_FLIP_VERTICAL   2
++#define PHP_GD_FLIP_BOTH       3
+ #ifdef HAVE_GD_FREETYPE
+ static void php_imagettftext_common(INTERNAL_FUNCTION_PARAMETERS, int, int);
+ #endif
+@@ -1137,9 +1141,9 @@ PHP_MINIT_FUNCTION(gd)
+     /* GD2 image format types */
+   REGISTER_LONG_CONSTANT("IMG_GD2_RAW", GD2_FMT_RAW, CONST_CS | CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT("IMG_GD2_COMPRESSED", GD2_FMT_COMPRESSED, CONST_CS | CONST_PERSISTENT);
+-  REGISTER_LONG_CONSTANT("IMG_FLIP_HORIZONTAL", GD_FLIP_HORINZONTAL, CONST_CS | CONST_PERSISTENT);
+-  REGISTER_LONG_CONSTANT("IMG_FLIP_VERTICAL", GD_FLIP_VERTICAL, CONST_CS | CONST_PERSISTENT);
+-  REGISTER_LONG_CONSTANT("IMG_FLIP_BOTH", GD_FLIP_BOTH, CONST_CS | CONST_PERSISTENT);
++  REGISTER_LONG_CONSTANT("IMG_FLIP_HORIZONTAL", PHP_GD_FLIP_HORIZONTAL, CONST_CS | CONST_PERSISTENT);
++  REGISTER_LONG_CONSTANT("IMG_FLIP_VERTICAL", PHP_GD_FLIP_VERTICAL, CONST_CS | CONST_PERSISTENT);
++  REGISTER_LONG_CONSTANT("IMG_FLIP_BOTH", PHP_GD_FLIP_BOTH, CONST_CS | CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT("IMG_EFFECT_REPLACE", gdEffectReplace, CONST_CS | CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT("IMG_EFFECT_ALPHABLEND", gdEffectAlphaBlend, CONST_CS | CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT("IMG_EFFECT_NORMAL", gdEffectNormal, CONST_CS | CONST_PERSISTENT);
+@@ -4696,15 +4700,15 @@ PHP_FUNCTION(imageflip)
+   }
+ 
+   switch (mode) {
+-      case GD_FLIP_VERTICAL:
++      case PHP_GD_FLIP_VERTICAL:
+           gdImageFlipVertical(im);
+           break;
+ 
+-      case GD_FLIP_HORINZONTAL:
++      case PHP_GD_FLIP_HORIZONTAL:
+           gdImageFlipHorizontal(im);
+           break;
+ 
+-      case GD_FLIP_BOTH:
++      case PHP_GD_FLIP_BOTH:
+           gdImageFlipBoth(im);
+           break;
+ 

It's a backport of the patch applied to 8.1+

tompear commented on 2021-09-22 12:15 (UTC)

https://wiki.archlinux.org/title/Downgrading_packages

Github link is only informationally, there is description of the reason why you cant build PHP with newer gd version.

hamedsbt commented on 2021-09-22 11:48 (UTC) (edited on 2021-09-22 12:15 (UTC) by hamedsbt)

@tompear, How I can downgrade 'gd' to 2.3.2? the gd-git.v2.3.2.r420.g826e5462-1 installed but I can't build php74-intl :( also I can't use your provided github link to downgrade the gd.

tompear commented on 2021-09-17 06:48 (UTC) (edited on 2021-09-17 06:53 (UTC) by tompear)

Downgrade 'gd' to 2.3.2. In 2.3.3 some macros have been removed and older versions of PHP will not build anymore.

There are details https://github.com/libgd/libgd/commit/bdc281eadb1d58d5c0c7bbc1125ee4674256df08

zack6849 commented on 2021-09-16 16:27 (UTC)

https://github.com/libgd/libgd/issues/318 https://github.com/php/php-src/pull/7490

Tried using gd-git, no dice.

zack6849 commented on 2021-09-16 16:12 (UTC)

I'm getting errors when compiling with GD right now -- anyone have any ideas?

/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c: In function ‘zm_startup_gd’:
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c:1140:55: error: ‘GD_FLIP_HORINZONTAL’ undeclared (first use in this function)
 1140 |         REGISTER_LONG_CONSTANT("IMG_FLIP_HORIZONTAL", GD_FLIP_HORINZONTAL, CONST_CS | CONST_PERSISTENT);
      |                                                       ^~~~~~~~~~~~~~~~~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/Zend/zend_constants.h:53:105: note: in definition of macro ‘REGISTER_LONG_CONSTANT’
   53 | #define REGISTER_LONG_CONSTANT(name, lval, flags)  zend_register_long_constant((name), sizeof(name)-1, (lval), (flags), module_number)
      |                                                                                                         ^~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c:1140:55: note: each undeclared identifier is reported only once for each function it appears in
 1140 |         REGISTER_LONG_CONSTANT("IMG_FLIP_HORIZONTAL", GD_FLIP_HORINZONTAL, CONST_CS | CONST_PERSISTENT);
      |                                                       ^~~~~~~~~~~~~~~~~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/Zend/zend_constants.h:53:105: note: in definition of macro ‘REGISTER_LONG_CONSTANT’
   53 | #define REGISTER_LONG_CONSTANT(name, lval, flags)  zend_register_long_constant((name), sizeof(name)-1, (lval), (flags), module_number)
      |                                                                                                         ^~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c:1141:53: error: ‘GD_FLIP_VERTICAL’ undeclared (first use in this function)
 1141 |         REGISTER_LONG_CONSTANT("IMG_FLIP_VERTICAL", GD_FLIP_VERTICAL, CONST_CS | CONST_PERSISTENT);
      |                                                     ^~~~~~~~~~~~~~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/Zend/zend_constants.h:53:105: note: in definition of macro ‘REGISTER_LONG_CONSTANT’
   53 | #define REGISTER_LONG_CONSTANT(name, lval, flags)  zend_register_long_constant((name), sizeof(name)-1, (lval), (flags), module_number)
      |                                                                                                         ^~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c:1142:49: error: ‘GD_FLIP_BOTH’ undeclared (first use in this function)
 1142 |         REGISTER_LONG_CONSTANT("IMG_FLIP_BOTH", GD_FLIP_BOTH, CONST_CS | CONST_PERSISTENT);
      |                                                 ^~~~~~~~~~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/Zend/zend_constants.h:53:105: note: in definition of macro ‘REGISTER_LONG_CONSTANT’
   53 | #define REGISTER_LONG_CONSTANT(name, lval, flags)  zend_register_long_constant((name), sizeof(name)-1, (lval), (flags), module_number)
      |                                                                                                         ^~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c: In function ‘zif_imageflip’:
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c:4699:22: error: ‘GD_FLIP_VERTICAL’ undeclared (first use in this function)
 4699 |                 case GD_FLIP_VERTICAL:
      |                      ^~~~~~~~~~~~~~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c:4703:22: error: ‘GD_FLIP_HORINZONTAL’ undeclared (first use in this function)
 4703 |                 case GD_FLIP_HORINZONTAL:
      |                      ^~~~~~~~~~~~~~~~~~~
/home/zack/.cache/aurutils/sync/php74/src/php-7.4.23/ext/gd/gd.c:4707:22: error: ‘GD_FLIP_BOTH’ undeclared (first use in this function)
 4707 |                 case GD_FLIP_BOTH:
      |                      ^~~~~~~~~~~~
make: *** [Makefile:1087: ext/gd/gd.lo] Error 1

ihipop commented on 2021-08-02 06:11 (UTC) (edited on 2021-08-02 06:47 (UTC) by ihipop)

@tompear

  • you are right,this package doesn't conflicts with default php package

  • php-pear http://aur.archlinux.org/packages/php-pear works with multi version php,it's has a internal switch to set which php version suffix to use

  • I will install default php package to have php-pear installed and use php74 to run it instead

PHP_PEAR_PHP_BIN=php74 pear config-set  php_suffix '74' system
PHP_PEAR_PHP_BIN=php74 pecl -d php_suffix=74 install swoole

tompear commented on 2021-07-30 07:45 (UTC)

Why should i do that? In my opinion it doesnt provide php as is, its php 7.4. Adding this is not good or even right solution but i can be wrong.

ihipop commented on 2021-07-29 03:46 (UTC)

can you add

provides=('php')

to this package?

tompear commented on 2021-06-21 13:38 (UTC)

There is syntax error in my comment about running tests manually. It should be:

export REPORT_EXIT_STATUS=1;export NO_INTERACTION=1;export SKIP_ONLINE_TESTS=1;export SKIP_SLOW_TESTS=1;export TEST_PHP_ARGS="-j$(nproc)";export TESTS='tests Zend'; ../build/sapi/cli/php -n run-tests.php -n -P {tests,Zend}

-P option is not part of PHP command and this one produces an error. This option is related with 'run-tests.php' script. I didnt paste command properly, there is no script to run.

miguelmsoler commented on 2021-06-16 14:07 (UTC)

I'm on Arch and I see the same error about no P option

kdvr commented on 2021-05-10 15:21 (UTC)

Sure I understand. I see that it fails on Error in argument 2, char 2: option not found P. I'll fix this manually no worries. It does seem strange that this option isn't available, but software is software :-)

tompear commented on 2021-05-10 13:45 (UTC)

You are using Manjaro right? If so, AUR is for Arch Linux Users and support for other OS types is not a must.

But ... you can try to turn off apparmor. Dont know if it is a reason why check() doesnt work but give it a chance.

Other thing you can try first is to run checks manually after build process to see any errors. To do it go to build directory (according to your log file it was /var/tmp/pamac-build-rik/php74/src/php-7.4.19) and try to execute:

export REPORT_EXIT_STATUS=1;export NO_INTERACTION=1;export SKIP_ONLINE_TESTS=1;export SKIP_SLOW_TESTS=1;export TEST_PHP_ARGS="-j$(nproc)";export TESTS='tests Zend'; ../build/sapi/cli/php -n -P {tests,Zend}

kdvr commented on 2021-05-10 10:02 (UTC)

@tompear thanks for checking.

Here is the full build log: https://gist.githubusercontent.com/rikvanderkemp/97c3d2e3045b6e64c3879a58e1892031/raw/5a2440bc163779409430119920e4b2c4dbaf94bc/build.log

tompear commented on 2021-05-10 09:39 (UTC)

Bad news is: it works for me (up to date version of Arch and Manjaro too).

I get this message about PHP_Archive too so this is not the reason why check() doesnt work.

Please paste more data about fail, right now its hard to write anything else.

kdvr commented on 2021-05-10 08:23 (UTC)

@tompear it looks like the package won't compile anymore.

The build ends with

==> Starting check()...
==> ERROR: A failure occurred in check().
    Aborting...

Another clue might be

Generating phar.php
Generating phar.phar
PEAR package PHP_Archive not installed: generated phar will require PHP's phar extension be enabled.
directorytreeiterator.inc
invertedregexiterator.inc
clicommand.inc
directorygraphiterator.inc
pharcommand.inc
phar.inc

I have tried removing and clearing the cache to no avail.

tompear commented on 2021-03-04 21:29 (UTC)

@AlexySirov php74-memcached is in. I will add php74-memcache soon.

AlexySirov commented on 2021-03-01 09:26 (UTC) (edited on 2021-03-01 09:27 (UTC) by AlexySirov)

Please think about adding php74-memcached and php74-memcache

sausix commented on 2021-02-22 13:34 (UTC)

@tompear You may acquire php74-mcrypt into your package collection if you like.

berturion commented on 2021-02-21 19:07 (UTC)

@tompear Thank you! That was quick :)

tompear commented on 2021-02-21 18:26 (UTC)

@berturion all packages from your 'wish list' are in AUR now.

tompear commented on 2021-02-16 20:47 (UTC)

I have surgery tomorrow. After that there will be plenty of free time. Will see, will see ;)

berturion commented on 2021-02-16 17:03 (UTC)

Hello @tompear, I hope you are doing well. No hurry, when you will be fine, please think about adding php74-igbinary, php74-redis, php74-imagick, php74-apcu and php74-smbclient. These packages are necessary to run the current nextcloud package and all its extensions, there are some compatibility issues with php73 and nextcloud does not support php8 yet. Thank you very much for providing php74 on arch linux still. Have a nice day.

sausix commented on 2021-02-13 09:40 (UTC)

@tompear I've fixed it for myself. It was just a test build.

Get well first! :-)

tompear commented on 2021-02-13 08:31 (UTC)

Right now i am in hospital and there is nothing i can do about it in next few days.

sausix commented on 2021-02-12 14:11 (UTC)

smtp-forwarder dependency with at least on default provider msmtp-mta provides /usr/sbin/sendmail. That breaks check() which uses this line:

/build/sapi/cli/php -n -r 'echo ini_get("sendmail_path");' | grep -q '/usr/bin/sendmail'

jc-aur commented on 2021-02-03 13:04 (UTC)

@tompear works perfectly, thanks :)

tompear commented on 2021-02-03 09:24 (UTC)

Try to do in console: gpg --recv-keys 910DEB46F53EA312

jc-aur commented on 2021-02-03 00:41 (UTC)

Hello, I am having a problem whenever I try to compile this package, looks like one of the public keys is not valid:

php-7.4.14.tar.xz ... FAILED (unknown public key 910DEB46F53EA312) ==> ERROR: One or more PGP signatures could not be verified!