Package Details: php71 7.1.16-1

Git Clone URL: https://aur.archlinux.org/php71.git (read-only)
Package Base: php71
Description: A general-purpose scripting language that is especially suited to web development
Upstream URL: http://www.php.net
Keywords: 7.1 php
Licenses: PHP
Provides: php=7.1.16
Submitter: Synthead
Maintainer: Synthead
Last Packager: Synthead
Votes: 3
Popularity: 0.052729
First Submitted: 2018-03-26 18:04
Last Updated: 2018-04-04 20:30

Required by (460)

Sources (7)

Latest Comments

1 2 Next › Last »

botzko commented on 2018-06-25 09:03

I'm new to the community and do not see any way to create git merge request. I have made a patch to replace freetype-config with pkg-config

$ cat gd_config.m4.patch
--- ext/gd/config.m4.orig
+++ ext/gd/config.m4
193c193
<       if test -f "$i/bin/freetype-config"; then
---
>       if test -f "$i/bin/pkg-config"; then
195c195
<         FREETYPE2_CONFIG="$i/bin/freetype-config"
---
>         FREETYPE2_CONFIG="$i/bin/pkg-config"
201c201
<       AC_MSG_ERROR([freetype-config not found.])
---
>       AC_MSG_ERROR([pkg-config not found.])
204,205c204,205
<     FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
<     FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
---
>     FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags freetype2`
>     FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs freetype2`
--- configure.orig
+++ configure
34322c34323
<       if test -f "$i/bin/freetype-config"; then
---
>       if test -f "$i/bin/pkg-config"; then
34324c34325
<         FREETYPE2_CONFIG="$i/bin/freetype-config"
---
>         FREETYPE2_CONFIG="$i/bin/pkg-config"
34330c34331
<       as_fn_error $? "freetype-config not found." "$LINENO" 5
---
>       as_fn_error $? "pkg-config not found." "$LINENO" 5
34333,34334c34334,34335
<     FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
<     FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
---
>     FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags freetype2`
>     FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs freetype2`
35999c36000
<       if test -f "$i/bin/freetype-config"; then
---
>       if test -f "$i/bin/pkg-config"; then
36001c36002
<         FREETYPE2_CONFIG="$i/bin/freetype-config"
---
>         FREETYPE2_CONFIG="$i/bin/pkg-config"
36007c36008
<       as_fn_error $? "freetype-config not found." "$LINENO" 5
---
>       as_fn_error $? "pkg-config not found." "$LINENO" 5

P.S. @JohnMaguire your suggestion is much easier and faster :)

JohnMaguire commented on 2018-05-23 18:30

As mentioned on php71-noconflict by @schlmm, it would be nice if this could include the following patches for freetype-config:

https://bugs.archlinux.org/task/58447 https://bugs.php.net/bug.php?id=76324

However, in the meantime, I was able to get this installed by creating a file /usr/sbin/freetype-config containing:

#!/bin/sh

/usr/sbin/pkg-config freetype2 $@

gabrielozaki commented on 2018-04-19 13:57

Hi guys, works for me:

1) remove all php71 packages

2) Install this package(don't worry, this package come with a lot of another packages, like gd,mysql,pgsql...)

3) softlink the module and conf:

ln -s /etc/httpd/modules/php71.so /etc/httpd/modules/libphp7.so

ln -s /etc/httpd/conf/extra/php71_module.conf /etc/httpd/conf/extra/php7_module.conf

4) add this line to <directory "your_webroot_folder"=""> of file /etc/httpd/conf/httpd.conf :</directory>

DirectoryIndex index.php

elimpfor commented on 2018-04-10 20:12

Wow. Upgraded from php71-7.1.14 to 7.1.16 and it completely broke everything. For some reason libphp7.so changed to php71.so. Then, when manually modifying httpd.conf so apache can start again, php is not reading /etc/php/php.ini and saying the modules are missing etc... Glad I have the pkg/cache to revert...

betarepeating commented on 2018-04-06 23:14

Updated to the latest apache (apache-2.4.33) and suddenly apache would no longer start. I had same error as FrederickZh. Changing the name of the module did not fix it, still got "Can't locate API module structure".

What is my httpd.conf line entry supposed to look like? I changed it to point to the /opt directory but it still did not work.

FrederickZh commented on 2018-04-06 02:56

I have both the PHP in the official repo and this one installed and I do prefer having this one in /opt instead of /usr. Installing different versions of a single application all into /usr seems to be a more Ubuntu thing to me actually... I don't have php70 or php56 in my system but I wonder how they maintain the naming consistency as php in official repo never takes multi-version into consideration?

But perhaps we could flatten the directory structure a bit? The /opt/usr tends to be somewhat redundant imo.

Edit: And the naming of php71-apache... Official one is using libphp7.so, so maybe "libphp71.so" is a better choice here?

Edit 2: The apache module is called "php7_module" instead of "php71_module" as shown in php71_module.conf. Using "php71_module" gave me an error of "httpd: Syntax error on line 190 of /etc/httpd/conf/httpd.conf: Can't locate API module structure `php71_module' in file /etc/httpd/modules/php71.so: /etc/httpd/modules/php71.so: undefined symbol: php71_module".

Synthead commented on 2018-04-04 20:50

@schlmm: I saw where the other packages were configuring and putting their files, and I actually like it a little better in /opt. This naturally keeps the conflicts away without fussing with patches or renaming things (i.e. /etc/php/php.ini, for example). If someone familiar with Linux was told to troubleshoot a problem with an additional PHP 7.1 installation and they saw it in /opt, they'd know exactly what's going on. These are just my personal, subjective thoughts, though. What do you think?

Also, /usr/lib/systemd/system/php71-fpm.service is included in php71-fpm, which is built in this PKGBUILD. Is there something additional you're looking to have included?

@arakmar and @zack6849: I updated the package to build against the latest ICU. Thanks!

@muhviehstarr: Honestly, I don't really like the idea of a /etc/profile.d/ entry because it makes the php binary implicit. With your example, "php" would always refer to the 7.1 binary, even when the upstream php package is installed. This means that other applications that use the php binary without an absolute path would unknowingly execute the 7.1 version. A bit of a gotcha. Instead, I think the right thing to do is to export $PATH or use an absolute path for the specific use cases where PHP 7.1 is necessary. What are your thoughts?

zack6849 commented on 2018-04-04 20:05

Doesn't build properly for me, get compiler errors, is this package still maintained?

muhviehstarr commented on 2018-04-02 16:45

maybe you should add bin links or add /opt/php71/usr/bin to PATH via an /etc/profile.d/ entry like this:

/etc/profile.d/php71.sh

!/bin/sh

export PATH=$PATH:/opt/php71/usr/bin

this will avoid fail updates like nextcloud which use the php binary for updates for users that only have installed php71

arakmar commented on 2018-03-30 08:05

Hi, A build fix since the latest icu update : https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/php&id=16c36238f69fd9729403a23c650016b424a37285