Ik heb centos 7 en php7.3, werkt met custombuild van DA.
Als ik ./build php n wil doen dan krijg ik:
there was an error while trying to configure php. Check the configure file
checking for icu-uc >= 50.1 icu-io icu-i18n... no
configure: error: Package requirements (icu-uc >= 50.1 icu-io icu-i18n) were not met:
Requested 'icu-uc >= 50.1' but version of icu-uc is 4.8.1.1
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables ICU_CFLAGS
and ICU_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Ik kan php 8 maar niet werkend krijgen op mijn systeem
daarna krijg ik ook dit: configure: error: Package requirements (icu-uc) were not met
Probeer dit eens?
cd /usr/local/directadmin/custombuild
./build update
./build icu
?
Onbekende gebruiker
10-09-2022 09:50
gewijzigd op 10-09-2022 09:50
De foutmelding zegt het. Een recentere versie van ICU is nodig voor het onderdeel pkg-config, maar die kan niet gevonden worden op je systeem.
Je moet de omgevingsvariabele PKG_CONFIG_PATH instellen als ICU op een niet standaard plek staat, of je kan ICU_FLAGS met ICU_LIBS instellen wanneer je ICU helemaal niet nodig hebt.
ICU4C is de C-library achter de Intl-extensie, de laatste versie is versie 71. En voor Intl zijn alternatieven in PHP (mb_string functies, iconv, of zelfs hele alternatieve implementaties in PHP).
Dus download en installeer het op je systeem (op een standaardlocatie is het makkelijkst) en het builden van DA en PHP 8 zal daar niet meer op hangen.
cd /usr/local/directadmin/custombuild
./build update
./build icu
Dit heb ik gedaan en ook ./buil versions, icu staat er niet eens tussen.
Maar in /usr/local/icu/bin/icu-config staat dit wel:
Version = '4.8.1.1'
[size=xsmall]Toevoeging op 10/09/2022 10:42:28:[/size]
Ad Fundum op 10/09/2022 09:50:29
De foutmelding zegt het. Een recentere versie van ICU is nodig voor het onderdeel pkg-config, maar die kan niet gevonden worden op je systeem.
Je moet de omgevingsvariabele PKG_CONFIG_PATH instellen als ICU op een niet standaard plek staat, of je kan ICU_FLAGS met ICU_LIBS instellen wanneer je ICU helemaal niet nodig hebt.
ICU4C is de C-library achter de Intl-extensie, de laatste versie is versie 71. En voor Intl zijn alternatieven in PHP (mb_string functies, iconv, of zelfs hele alternatieve implementaties in PHP).
Dus download en installeer het op je systeem (op een standaardlocatie is het makkelijkst) en het builden van DA en PHP 8 zal daar niet meer op hangen.
Ok, maar moet ik dan niet 50.1 downloaden, zodat de versies matchen?
OOk heb ik deze stappen met verschillende versies geprobeerd. Pakte uit en installeerde, uiteindelijk versie 5.1 lukt, maar na de php 8.1 installatie krijg ik dit:
PHP Startup: Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-non-zts-20160303/imagick.so'
Goed, ja imagick word getoond in phpinfo, maar nog steeds dezelfde PHP startup , terwijl imagick.so daar gewoon aanwezig is als ik bijv php -v doe.
Daarnaast moet phpmyadmin geupgrade worden
?
Onbekende gebruiker
10-09-2022 12:32
gewijzigd op 10-09-2022 12:37
Sorry, ik las later pas dat het je al gelukt was. Toch nog even de antwoorden op je vragen:
Daniel van Seggelen op 10/09/2022 10:31:30
Ok, maar moet ik dan niet 50.1 downloaden, zodat de versies matchen?
Nee, dat is de minimale versie. Hoger mag gewoon.
Daniel van Seggelen op 10/09/2022 10:31:30
ik zie nergens waar ik ICU_FLAGS met ICU_LIBS kan instellen in de config?
Niet in de config, maar als omgevingsvariabele ('set environment variable'). Hoe je dat doet kan je hier lezen.
Ook kan je met het commando man pkg-config verder lezen over hoe je het kan instellen.
Met RPM ben ik niet zo bekend, ik gebruik APT op Debian Linux. Maar daar kom je vast uit via internet.
Daniel van Seggelen op 10/09/2022 10:31:30
Als ik nu yum info icu uitvoer zie ik wel dat het versie 50.02 is.
Maar waarom pakt /build php b hem dan niet
Als ICU 50.02 al op je systeem staat, dan staat het niet op de locatie waar het wordt verwacht bij het compileren. Stel in dat geval de afwijkende plek in met de omgevingsvariabele PKG_CONFIG_PATH, zodat de goede versie van ICU gevonden kan worden (want je kan er meerdere tegelijk op je systeem hebben, zoals met Java).