Closed thias closed 10 months ago
Hello, can you tell us what version of PHP you've used?
This is with the latest PHP 8.1, 8.1.25 (original report was with 8.1.24, but I've since re-tried a few times and the latest was with 8.1.25).
I forgot to ask what is the command line you've used to build the project sorry
I'm building for an rpm package which is found here: https://github.com/exogroup/rpms/blob/master/php-aerospike/php-aerospike.spec This is the relevant part of the spec file:
%build
%{?dtsenable}
export CFLAGS="%{optflags}"
cd NTS
PHP_CONFIG=%{_bindir}/%{?scl_prefix}php-config cargo build
And this is what it actually translates to when building:
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.ctwvbn
+ umask 022
+ cd /builddir/build/BUILD
+ cd php-client-0.2.0-vendor
+ export 'CFLAGS=-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection'
+ CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection'
+ cd NTS
+ PHP_CONFIG=/usr/bin/php-config
+ cargo build
Compiling libc v0.2.150
Compiling proc-macro2 v1.0.69
Compiling unicode-ident v1.0.12
Compiling version_check v0.9.4
Compiling cfg-if v1.0.0
Compiling autocfg v1.1.0
[... all the way to the error reported ...]
FYI, I have just retried a build without the Red Hat provided CFLAGS, but get the exact same errors.
Hi @thias, there seems to be some issue with the underlying extension but I have made a hard dependency on a prior version of the ext-php-rs(0.10.1) and our client works as expected with that version of the ext-php-rs. You can test it with that. Once the fix is in for 0.10.3 version of the ext-php-rs we will bump the version with our release.
Thanks! If I had known the syntax to pin a specific version was just adding an = sign, I would have tried that already. Building with 0.10.1 works around the issue for now indeed.
@thias glad it worked 👍 I'll go ahead and close this issue but will keep in mind when we bump version to the latest ext-php-rs version.
This has now been fixed upstream in https://github.com/davidcole1340/ext-php-rs/pull/280 and released in 0.10.4. I can confirm that the Aerospike PHP Client 0.2.0 now builds fine again on aarch64 with it, and the pin to 0.10.1 is no longer required.
Hi,
I've updated our x86_64 build to 0.2.0 with no issues, but when trying to rebuild for aarch64, I got the following failure:
I just tried recompiling 0.1.0 and it worked:
It does look like it could be related to the newer ext-php-rs, though. This is with PHP 8.1.24 on Red Hat Enterprise Linux 9.