Apró változás PHP-8.4-ben

Kiszerelik az OCI8-at, ha jól látom, alapvetően az érdeklődés hiánya miatt.
Valamiféle PECL-ben lesz majd, bármi is legyen az. https://pecl.php.net/package/oci8

Szerk: kijött a 8.4.1, máris kitolom élesbe, meglátjuk, mi lesz.
https://www.php.net/ChangeLog-8.php#PHP_8_4

Hozzászólások

Szerkesztve: 2024. 11. 11., h – 21:07

No meg lett ez az apróság:

ld: 0711-317 ERROR: Undefined symbol: .zend_flf_parse_arg_str_slow

Eddig csak zend_parse_arg_str_slow volt, ez a mostani bizonyára fejlettebb.

További jelentős előrelépés:

   - The php_strtoupper(), php_string_toupper(), php_strtolower(), and
     php_string_tolower() functions has been removed, use zend_str_toupper(),
     zend_string_toupper(), zend_str_tolower(), and zend_string_tolower()
     respectively instead.

Ilyesmit vélek látni különféle header-ekben:

PHPAPI char *php_strtolower(char *s, size_t len);
ZEND_API void ZEND_FASTCALL zend_str_tolower(char *str, size_t length);

"Belül" pedig: 

PHPAPI char *php_strtolower(char *s, size_t len)
{
        zend_str_tolower(s, len);
        return s;
}

Ugy emlekszem, hogy ezek ilyen kulon betoltheto modulok. Mint a pip meg az npm. Rajottek, hogy nem hasznaljak annyian, hogy beepitve maradjon, inkabb kikerul csomagba. Nem csodalom, esszeru dontes.

A strange game. The only winning move is not to play. How about a nice game of chess?

Igen, a PECL az a community-managed native PHP extension gyujtemeny. A hasonlo - bar kisbetus - nevu paranccsal lehet letolteni es telepiteni oket, de - alap esetben - PATH-en kell lennie a php devel cuccoknak (php-config, phpize, stb) vagy valahogy be kell allitani.

A legtobb esetben a PHP installacio hoz is magaval egy pecl commandot, ami elore van patchelve. Ha megsem mukodne a forditas, letolteni akkor is le lehet vele (pecl download oci8) es utana ki tudod csomagolni, /valami/ahol/php/bin/phpize && ./configure --with-php-config=/valami/ahol/php/bin/php-config  es utana sima make all install -al tudod telepiteni.

Blog | @hron84

valahol egy üzemeltetőmaci most mérgesen toppant a lábával 

via @snq-

Ugy remlik anno PHP5 idejen is pecl/pear kellett az oci-hoz.

Szerkesztve: 2024. 11. 22., p – 15:15

Ez most Linuxon volt:

checking for iconv support... yes
checking for iconv... yes
checking for iconv implementation... glibc
checking if iconv supports errno... no
configure: error: in '/usr/local/src/php-8.4.1':
configure: error: The iconv check failed, 'errno' is missing.
code>

Sz_rul állhatunk, ha már az errno-t is lopják... Még az is lehet, hogy több iconv is lehet egy gépen, mondjuk esetleg a glibc-ben is szaladgál egy, meg külön komponensként is lehet telepítve.
De egyébként nem az errno a gond, hanem egyszerűen nem találja a shared libát a ld(1). De előtte egy sorral még megtalálta, mégpedig a glibc-ben. Szerk: természetesen nem találta, nem is kereste, valami mást tesztelt, nevezetesen a gnu_get_libc_version függvény meglétét ellenőrizte.