Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a hint how to detect Vips is correctly installed #252

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

alexander-schranz
Copy link

No description provided.

@kleisauke
Copy link
Member

FWIW, this can probably be simplified to just:

$ php -r "require_once('vendor/autoload.php'); echo 'libvips version: ' . \\Jcupitt\\Vips\\Config::version() . PHP_EOL;"
libvips version: 8.16.0

Since almost all checks mentioned in this PR are covered here:

php-vips/src/FFI.php

Lines 239 to 249 in a8cc66c

// detect the most common installation problems
if (!extension_loaded('ffi')) {
throw new Exception('FFI extension not loaded');
}
if (!ini_get('ffi.enable')) {
throw new Exception("ffi.enable not set to 'true'");
}
if (version_compare(PHP_VERSION, '8.3', '>=') &&
ini_get('zend.max_allowed_stack_size') != '-1') {
throw new Exception("zend.max_allowed_stack_size not set to '-1'");
}

For example, when I remove the zend.max_allowed_stack_size = -1 setting in php.ini, I see:

$ php -r "require_once('vendor/autoload.php'); echo 'libvips version: ' . \\Jcupitt\\Vips\\Config::version() . PHP_EOL;"
PHP Fatal error:  Uncaught Jcupitt\Vips\Exception: zend.max_allowed_stack_size not set to '-1' in /home/kleisauke/php-vips/src/FFI.php:248
Stack trace:
#0 /home/kleisauke/php-vips/src/FFI.php(150): Jcupitt\Vips\FFI::init()
#1 /home/kleisauke/php-vips/src/Config.php(149): Jcupitt\Vips\FFI::version()
#2 Command line code(1): Jcupitt\Vips\Config::version()
#3 {main}
  thrown in /home/kleisauke/php-vips/src/FFI.php on line 248

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants