Comment gérer l'erreur « appel à la fonction non déclarée 'sys_icache_invalidate » lors de l'exécution de « make » sur Mac OS Ventura M1 ?
P粉006977956
P粉006977956 2023-07-17 18:30:07
0
1
612

J'essaie de maintenir une ancienne application en utilisant PHP 5.4.45. J'ai donc installé le code source de la version PHP correspondante à partir d'ici. J'ai décompressé le dossier tar.gz et exécuté...

  1. ./configure --with-iconv=/opt/homebrew/opt/libiconv
  2. make

Dans la première étape, la configuration a été effectuée avec succès. Cependant, lors de la deuxième étape, de nombreux avertissements et erreurs sont apparus. À cette erreur, le processus de création s'arrête : 

/Users/ferguso/Downloads/php-5.4.45/ext/pcre/pcrelib/sljit/sljitNativeARM_64.c:312:2:
error: call to undeclared function 'sys_icache_invalidate'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
        SLJIT_CACHE_FLUSH(code, code_ptr);

/Users/ferguso/Downloads/php-5.4.45/ext/pcre/pcrelib/sljit/sljitConfigInternal.h:301:2:
note: expanded from macro 'SLJIT_CACHE_FLUSH'
        sys_icache_invalidate((char*)(from), (char*)(to) - (char*)(from))

Comment gérer cette erreur et installer le code source de la version PHP 5.4.45 sur mon MacBook MacOS Ventura M1 ?

P粉006977956
P粉006977956

répondre à tous(1)
P粉418351692

我比较了最新的代码。尝试在宏前面包含头文件。

#include  /* +++ */
#define SLJIT_CACHE_FLUSH(from, to) \
     sys_icache_invalidate((void*)(from), (size_t)((char*)(to) - (char*)(from))) 
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal