Open N6REJ opened 1 year ago
8.2.1 is around the corner and still no build :C I've been waiting for weeks... I found this: https://wiki.php.net/internals/windows/stepbystepbuild if you manage to build a DLL before one appears on pecl please share.
@terax6669 wrote:
:C
What does ":C" mean? I don't speak emoji.
@N6REJ I've actually never been involved in building any extensions for Windows, and I'm not a Windows user.
Reading the front page of https://windows.php.net/ I can see:
Missing PECL DLLs 17 Oct 2022
You may have already noticed that DLLs for new PECL releases are no longer available for several months. This is because the Windows PECL build machine died, and the team is still working on the long term plan of building DLLs for PECL extensions with a new CI process. We're doing our best to finish that as soon as possible, and keep you up to date.
Which is certainly unfortunate.
I will try to find out what the situation is. For the record, I personally think getting the windows builds available again is something that would be appropriate for the PHP Foundation to be hiring someone to work on full time.
it would be great if you could expedite it. We've got every version of imagemick since php 8.0 not working because of it.
if you want, teach me how to do it and i'll make the imagick ones myself
if you want, teach me how to do it and i'll make the imagick ones myself
I don't know, I've never compiled Imagick on windows.
If anyone wants to write some instructions, I could host them on phpimagick.com
btw, https://mlocati.github.io/articles/php-windows-imagick.html exists and may be of help to some people.
Sigh, the latest version provided on that page, for 8.1, doesn't work for 8.2. Using PHP 8.2 and following those instructions for 8.1, I get the expected mismatch error:
[29-Dec-2022 17:35:22 UTC] PHP Warning: PHP Startup: imagick: Unable to initialize module Module compiled with module API=20210902 PHP compiled with module API=20220829 These options need to match in Unknown on line 0
thanks @Danack for all your work. waiting patiently for that server to come up hehe
Any update on this?
Any update on this?
Success BUILD for Windows! Test on your own risk. Left messages here if it works.
PHP 8.2.3 x64 TS + NTS
ext-imagick-php8.2-ts-x64.zip ext-imagick-php8.2-nts-x64.zip
Thats fantastic!
what about nts?
Success BUILD for Windows! Test on your own risk. Left messages here if it works.
PHP 8.2.3 x64 TS
greate, but what about nts?
I had to go through 9 rings of hell to make this build without any instructions or tips... If you really need it, I can make another build, for NTS...) You can download here - https://github.com/Imagick/imagick/issues/573#issuecomment-1431773928
I had to go through 9 rings of hell to make this build without any instructions or tips... If you really need it, I can make another build, for NTS...) You can download here - #573 (comment)
thanks so much. Will try your build. Also found this great guide and planning use it https://jite.eu/_posts/2021-02-21-imagick-on-php8/
UPD: works for me, thx
The thread-safe version (the one I need) will not work on my system (Win11, XAMPP, with PHP 8.2). I suspect it's because the version of ImageMagick I have installed locally (ImageMagick-7.1.0-18-vc15-x64/ImageMagick 7.1.0-18 Q16 x64) is different than the version the builds above were compiled against.
@ArthurPatriot, which version of ImageMagick did you compile those builds against?
The thread-safe version (the one I need) will not work on my system (Win11, XAMPP, with PHP 8.2). I suspect it's because the version of ImageMagick I have installed locally (ImageMagick-7.1.0-18-vc15-x64/ImageMagick 7.1.0-18 Q16 x64) is different than the version the builds above were compiled against.
@ArthurPatriot, which version of ImageMagick did you compile those builds against?
All libraries included on zip. You can use latest version of Imagick for Windows.
@ArthurPatriot Which version of ImageMagick is installed on the machine where you compiled Imagick?
@ArthurPatriot Which version of ImageMagick is installed on the machine where you compiled Imagick?
All required libraries exists in zip. ImageMagick-7.1.0-62-Q16-HDRI-x64
@ArthurPatriot Success! Thanks so much!!!
Is this working for Debian Linux? php 8.2
@pro81723
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2-imagick
Success BUILD for Windows! Test on your own risk. Left messages here if it works.
PHP 8.2.3 x64 TS + NTS
ext-imagick-php8.2-ts-x64.zip ext-imagick-php8.2-nts-x64.zip
PHP 8.2.3 x64 TS
Works for me, W11 + XAMPP with PHP 8.2, Thanks!
Is there an official release?
when I compare the ts to whats on pecl repo there is a LOT missing. I'm unsure what to do.
it works for everything i need it to do. doesnt error out. are there any issues with the differences? otherwise i wouldnt worry too much i think
edit: NTS here so that might be less of an issue than TS version i suppose
TS here so that might be less of an issue than TS version i suppose
all must works
Success BUILD for Windows! Test on your own risk. Left messages here if it works.
PHP 8.2.3 x64 TS + NTS
ext-imagick-php8.2-ts-x64.zip ext-imagick-php8.2-nts-x64.zip
It appears in the "php -m" result but not in the phpinfo.
PS C:\xampp\htdocs\...> php --ri imagick
imagick
imagick module => enabled
imagick module version => @PACKAGE_VERSION@
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version => ImageMagick 7.1.0-62 Q16-HDRI x64 32ce406:20230212 https://imagemagick.org
Imagick using ImageMagick library version => ImageMagick 7.1.0-62 Q16-HDRI x64 32ce406:20230212 https://imagemagick.org
ImageMagick copyright => (C) 1999 ImageMagick Studio LLC
ImageMagick release date => 2023-02-12
ImageMagick number of supported formats: => 0
Directive => Local Value => Master Value
imagick.locale_fix => 0 => 0
imagick.skip_version_check => 0 => 0
imagick.progress_monitor => 0 => 0
imagick.set_single_thread => 1 => 1
imagick.shutdown_sleep_count => 10 => 10
imagick.allow_zero_dimension_images => 0 => 0
@ArthurPatriot Any possibillity of a lighter guide for wich rings of hell you went through to build this?
@ArthurPatriot Any possibillity of a lighter guide for wich rings of hell you went through to build this?
In fact, it is difficult only the first time... Once you have everything figured out, it is done in a few minutes...
@ArthurPatriot Would it possible to publish some notes on how to build this? Even if general, could be helpful. But detailed, step by step, instructions, or even a build script would be great!
For those of who also want to build our own.
ImageMagick number of supported formats: => 0
I have the same problem with 0 supported formats, on multiple machines... anybody managed to fix this?
What is odd is that on some pcs we have this, which is working:
And on other this, which apparently looks better because the two versions match, but it's not working:
I found a working solution:
so:
Tested this setup on 3 machines in our team, on both windows 10 and windows 11
If set correctly, you'll have 263 supported formats:
PS C:\> php --ri imagick
imagick
imagick module => enabled
imagick module version => @PACKAGE_VERSION@
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version => ImageMagick 7.1.0-62 Q16-HDRI x64 32ce406:20230212 https://imagemagick.org
Imagick using ImageMagick library version => ImageMagick 7.1.0-18 Q16 x64 2021-12-14 https://imagemagick.org
ImageMagick copyright => (C) 1999-2021 ImageMagick Studio LLC
ImageMagick release date => 2021-12-14
ImageMagick number of supported formats: => 263
ImageMagick supported formats => 3FR, 3G2, 3GP, AAI, AI, APNG, ART, ARW, ASHLAR, AVI, AVIF, AVS, BGR, BGRA, BGRO, BIE, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CLIPBOARD, CMYK, CMYKA, CR2, CR3, CRW, CUBE, CUR, CUT, DATA, DCM, DCR, DCRAW, DCX, DDS, DFONT, DJVU, DNG, DOT, DPS, DPX, DXT1, DXT5, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, EXR, FARBFELD, FAX, FF, FILE, FITS, FL32, FLIF, FLV, FPX, FRACTAL, FTP, FTS, G3, G4, GIF, GIF87, GRADIENT, GRAY, GRAYA, GROUP4, GV, HALD, HDR, HEIC, HEIF, HISTOGRAM, HRZ, HTM, HTML, HTTP, HTTPS, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, J2C, J2K, JBG, JBIG, JNG, JNX, JP2, JPC, JPE, JPEG, JPG, JPM, JPS, JPT, JSON, JXL, K25, KDC, KERNEL, LABEL, M2V, M4V, MAC, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORA, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PGX, PHM, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, POCKETMOD, PPM, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGB565, RGBA, RGBO, RGF, RLA, RLE, RMF, RSVG, RW2, SCR, SCREENSHOT, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TM2, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WEBM, WEBP, WMF, WMV, WPG, X3F, XBM, XC, XCF, XPM, XPS, XV, YAML, YCbCr, YCbCrA, YUV
can we get this into a working windows zip like the existing?
how about we get an "official" fork so we can keep up to date instead of a long thread
bonjour à tous, pour le problème de imagick j'ai trouvé la solution après plusieurs essaie et recherche. Voila de 1 je ne suis ni dévelloppeur ni programmeur et je n'est aucune connaissance ni en dévellopement ni dans les codes mais je ne suis pas con hhhhhhhh de 2 je travail sur XAMPP pour info en ce qui concerne la version PHP elle est de 8.2 J'ai commencer par installe l'application "ImageMagick-7.1.1-12-Q16-HDRI-x64-dll" dans mon systeme Ensuite j'ai télécharger la derniere version de php image magick "php_imagick-3.7.0-8.1-ts-vs16-x64" ou "php_imagick-3.7.0-8.1-nts-vs16-x64" et j'ai extrait les fichiers afin d'avoir le dossier concernant Apres j'ai copie le fichier "phpimagick.dll" dans le dossier XAMPP/php/ext ensuite j'ai copie tous les fichiers qui commence par "CORE........_.dll" et les fichiers "IMMOD......._.dll" dans le dossier XAMPP/Apache/bin enfin j'ai copié le fichier "extension=php_imagick.dll" sans la virgule avec point dans le fichier PHP.INI au dessus des extension ";extension=pgsql /// ;extension=shmop" Ca na pas fonctionner, mais quand j'ai ajouter le fichier "extension=php_gd2.dll" dans le fichier PHP.INI ça à fonctionner je n'est plus le message du probleme du imagick ni du GD si ça ne fonctionne pas vérifier si le fichier "php_gd.dll" existe dans le dossier XAMPP/apache/bin si oui je suis désolé que ça ne marche pas pour vous si non copie "php_gd.dll" dans le fichier XAMPP/apache/bin
Enfin après consultation dans php info () dans localhost j'ai pu avoir le tableau de imagick
bon courage à tous et je m'excuse pour les fautes d'orthographe ou de conjugaison ou de grammaire mais l'important c'est que le message soit bien transmis.
What's holding this up from being officially released on Windows PHP8.2?
What's holding this up from being officially released on Windows PHP8.2?
There has never really been any official releases for Windows. https://github.com/Imagick/imagick/issues/573#issuecomment-1353609195
There has never really been any official releases for Windows.
The DLLs are available for download on https://pecl.php.net/package/imagick, does it get more official than that?
The DLLs are available for download on https://pecl.php.net/package/imagick, does it get more official than that?
the issue here is that https://pecl.php.net/package/imagick/3.7.0/windows only has for php 8.1. and the dll doesnt work on php 8.2. so a rather weird post.
The DLLs are available for download on https://pecl.php.net/package/imagick, does it get more official than that?
the issue here is that https://pecl.php.net/package/imagick/3.7.0/windows only has for php 8.1. and the dll doesnt work on php 8.2. so a rather weird post.
https://github.com/Imagick/imagick/issues/573#issuecomment-1431773928
im already using that and it works perfectly :D my comment was aimed at the person that said that pecl = official, was just commenting that there arent any php 8.2 dlls there so nothing "official" in this case
edit: and im being a dumba**. i just re read it all and the person was referring to "there once apon a 8.1 and earlier time was an official download of dlls" instead of "go here for the official dlls" sorry person :(
I might be wrong about this, but I believe the Windows builds are generated automatically by PECL. Unfortunately, the latest push to PECL was made 1.5 years ago, when PHP 8.2 didn't exist.
Perhaps Danack could release a new version, which hopefully will trigger the build script for Windows. (and maybe add support for ImageMagik 7 as well)
but I believe the Windows builds are generated automatically by PECL.
No, the box died, and previously it was sponsored by Microsoft. Microsoft pulled out of helping the PHP project. So there is nothing I can do myself. Setting up a new box, and being the one responsible for fixing it when it breaks, and taking care of security for both the box and the builds would be a huge responsibility.
The PHP core team is really low on members, and it's 'not obvious' that getting volunteers to step in to support an OS after the company selling it drops contributing, is the right thing to do.
That's disappointing. I remember seeing an announcement about the build box dying about a year ago, but I thought it was fixed. At least the Linux version works with all PHP versions, even though it's a bit old.
Will you be able to release a new version compiled with ImageMagick 7 in the near future? To be clear, I'm asking about the Linux version available via PECL which is used by many install scripts.
That's disappointing. I remember seeing an announcement about the build box dying about a year ago, but I thought it was fixed. At least the Linux version works with all PHP versions, even though it's a bit old.
Will you be able to release a new version compiled with ImageMagick 7 in the near future? To be clear, I'm asking about the Linux version available via PECL which is used by many install scripts.
This issue about Windows build. Linux versions working well.
My Windows build using Imagick 7.1.0
This issue about Windows build. Linux versions working well.
I know. Sorry! I didn't mean to hijack this thread. I will open a separate ticket.
as this appears to be the current windows php 8.2 thread...
I running php 8.2.4 on win 10 (xampp) and doing this as suggested by @fmonts:
in ext/, put the .dll for 8.2
in bin/ (or whatever folder you added to windows Path), put the binaries for 8.1
then php --ri imagick
shows imagick module enabled and 263 supported formats.
But the xampp apache service says php_imagick.dll is not found. It is there and I've tried locating it from php.ini in a number of ways.
can someone confirm if they have got this running on windows with php 8.2.4 with Apache 2.4.56?
thanks
EDIT: I translated the comment from @Nomad862 above and so also copied the 8.1 CORE_.........dll" and the "IMMOD........dll" files into the XAMPP/Apache/bin folder. They are also in ..xampp/php/ Imagick now appears to work with apache / php 8.2.4 / win 10. i'm not sure if my installation was somehow broken or some other problem, but problem appears solved
@ArthurPatriot
I've noticed the module version is coming back as @PACKAGE_VERSION@
, which is breaking PDF previews in Wordpress media uploads, because the class-wp-image-editor-imagick.php
class has a test()
function that contains:
if ( version_compare( phpversion( 'imagick' ), '2.2.0', '<' ) ) {
return false;
}
I've got the 8.1 ImageMagick binaries, so everything is configured and working correctly, except the version. Is this an issue with the compilation process?
$ php --ri imagick
imagick
imagick module => enabled
imagick module version => @PACKAGE_VERSION@
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version => ImageMagick 7.1.0-62 Q16-HDRI x64 32ce406:20230212 https://imagemagick.org
Imagick using ImageMagick library version => ImageMagick 7.1.0-18 Q16 x64 2021-12-14 https://imagemagick.org
ImageMagick copyright => (C) 1999-2021 ImageMagick Studio LLC
ImageMagick release date => 2021-12-14
ImageMagick number of supported formats: => 263
@ArthurPatriot
I've noticed the module version is coming back as
@PACKAGE_VERSION@
, which is breaking PDF previews in Wordpress media uploads, because theclass-wp-image-editor-imagick.php
class has atest()
function that contains:if ( version_compare( phpversion( 'imagick' ), '2.2.0', '<' ) ) { return false; }
I've got the 8.1 ImageMagick binaries, so everything is configured and working correctly, except the version. Is this an issue with the compilation process?
$ php --ri imagick imagick imagick module => enabled imagick module version => @PACKAGE_VERSION@ imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel Imagick compiled with ImageMagick version => ImageMagick 7.1.0-62 Q16-HDRI x64 32ce406:20230212 https://imagemagick.org Imagick using ImageMagick library version => ImageMagick 7.1.0-18 Q16 x64 2021-12-14 https://imagemagick.org ImageMagick copyright => (C) 1999-2021 ImageMagick Studio LLC ImageMagick release date => 2021-12-14 ImageMagick number of supported formats: => 263
To fix this issue extension must be rebuilded with filled module version...
I'm looking for an updated build for https://windows.php.net/downloads/pecl/deps/ImageMagick-7.1.0-18-vc15-x86.zip that uses vc16 & x64. Where can I find such a thing or create one?