opcache: symbol not found in flat namespace (_zend_gdb_register_code) when JIT enabled on Mac OS X
Personne n'a encore pris cette issue.
- Langage dominant
- C
- Étoiles
- 40.4k
- Forks
- 8.2k
- Merge moyen
- 2 j 13 h
- PR mergées (30 j)
- 96
Description
Description
When compiling PHP 8.2 on Mac OS X with the following configuration:
./configure --enable-embed=static --enable-zts --with-iconv=/opt/homebrew/opt/libiconv/ --enable-opcache
I get this error when loading the opcache.so extension:
Failed loading /usr/local/lib/php/extensions/no-debug-zts-20220829/opcache.so: dlopen(/usr/local/lib/php/extensions/no-debug-zts-20220829/opcache.so, 0x0009): symbol not found in flat namespace (_zend_gdb_register_code)
Disabling opcache JIT fixes the issue:
./configure --enable-embed=static --enable-zts --with-iconv=/opt/homebrew/opt/libiconv/ --enable-opcache --disable-opcache-jit
PHP Version
PHP 8.2-dev
Operating System
macOS 12.6
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire le problème avec la commande configure de PHP 8.2-dev sur macOS 12.6, en gardant opcache JIT activé, puis comparez avec la configuration --disable-opcache-jit. Suivez l’échec du chargement de l’extension opcache impliquant _zend_gdb_register_code ; c’est terminé lorsque l’extension se charge correctement avec JIT activé dans la configuration de build indiquée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- c, php
- Domaine
- build-system, compilers
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100