asdf-community / asdf-community/asdf-php

Compilation error: dynamic STT_GNU_IFUNC symbol `mb_utf16be_to_wchar' with pointer equality in `ext/mbstring/libmbfl/filters/mbfilter_utf16.o' can not be used when making an executable; recompile with -fPIE and relink with -pie

Open
#183 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
256
Forks
117
PR merge metrics
No merged PRs in 30d

Description

### Provide environment information

When I try to install PHP, then I get a compilation error.

PHP 8.3.11
RHEL 8

### To Reproduce

```console
$ asdf install php 8.3.11
/usr/bin/ld: dynamic STT_GNU_IFUNC symbol `mb_utf16be_to_wchar' with pointer equality in `ext/mbstring/libmbfl/filters/mbfilter_utf16.o' can not be used when making an executable; recompile with -fPIE and relink with -pie
collect2: error: ld returned 1 exit status
make: *** [Makefile:323: sapi/fpm/php-fpm] Error 1
```

### Describe the Bug

Some kind of PIE related compilation error occurs when installing PHP.

As an aside, several packages were needed but not documented in the PHP instructions:

* Unclear which versions of re2c are supported
* Python > 3.7 (for latest re2c)
* libxml2-dev(el)
* libcurl-dev(el)
* gd-dev(el)
* libicu-dev(el)
* oniguruma-dev(el)
* libpq-dev(el)
* libzip-dev(el)

### Expected Behaviour

`asdf install php 8.3.11` should succeed.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing `asdf install php 8.3.11` on RHEL 8 and inspect the `sapi/fpm/php-fpm` target in `Makefile` along with `ext/mbstring/libmbfl/filters/mbfilter_utf16.o`. Check the reported PIE-related linker failure and the listed dependency and re2c requirements. Done means PHP 8.3.11 installs successfully through asdf on the reported environment.

Written by the indexing model from the issue text.

Assessment

Tech stack
php, shell
Domain
build-system, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.