Open robots4life opened 5 years ago
@rosell-dk Is there anything I can do to get rid of this error? On the other hand, do you have an idea why this is happening?
I shall have a look at this soon. However, not today. Thanks for your patience :)
Thank you very much.
Do I understand this correctly, that things generally works, but this specific image is giving trouble? It could perhaps be the filename. What is the filename? Can you try uploading the problematic image to Site B and see if Site B can convert it? If it cannot, please paste the log here
The error log on Site B shows warnings from the following convertion methods that fails: ImageMagick, GraphicsMagick and then Cwebp. Does any of these converters work on site B? If not, you could disable them. That will prevent this stuff from being written to the error log
Do I understand this correctly, that things generally works, but this specific image is giving trouble?
No, generally the conversion does not work, regardless of if it is this image or another image. But to make 100% sure I will setup Site A and B fresh and do exactly what I am trying to do and then let you know the results.
It could perhaps be the filename. What is the filename?
The filename is PIA13128.jpg. It is from here. https://photojournal.jpl.nasa.gov/jpeg/PIA13128.jpg
Can you try uploading the problematic image to Site B and see if Site B can convert it? If it cannot, please paste the log here.
I will do that and report back.
Does any of these converters work on site B?
I will check and report back to you.
This will take a couple of days to get back to you. Thank you heaps for taking the time to look into this. You will hear from me in this issue.
ok :)
The following entries in the error log is puzzles me:
Checking if we have a supplied binary for OS: Linux... We do.
We in fact have 3
A total of 3 cwebp binaries where found
Detecting versions of the cwebp binaries found (and verifying that they can be executed in the process)
Executing: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-shared -version
Exec failed (the cwebp binary was not found at path: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-shared)
Executing: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-static -version
Exec failed (the cwebp binary was not found at path: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-static)
Executing: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-0.6.1 -version. Result: version: 0.6.1
Three binaries are reported found, but then it is reported that two of them fails because they doesn't exist. That looks like a bug.
Can I have you try again on 0.17.2? I made significant changes in the programming that discovers and executes cwebp binaries. Perhaps the problem is already gone.
It is really strange. Can you tell me if the cwebp-linux-1.0.2-static file is there? (in wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-static)
(on your un-updated system, if you still have that... - the file names of the binaries where changed in 0.17.2)
The strange part being that we get the message: "Exec failed (the cwebp binary was not found at path...". This message is generated when the exec() returns 127, which it is only supposed to do when the file is missing.
I think perhaps I'm onto something. You log says:
[27-Jul-2019 13:42:36] WARNING: [pool www] child 3775 said into stderr: "/shared/httpd/SiteB/htdocs/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-shared: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory"
The "cwebp-linux-1.0.2-shared" executable is really a shared library. It depends on other libraries being installed on the system. It cannot find one of these and it complains "cannot open shared object file: No such file or directory" and returns 127. It kind of makes sense.
From version 1.0.0 on, Google unfortunately shifted from releasing executables (which contains all the libraries that is needed) to releasing shared object libraries. And these shared object libraries doesn't work on all systems. And it seems a 127 is returned in such cases.
I must read up on these things. Beginning here.
I notice that the new cwebp 1.0.3 (which we are now using) has considerably less dependencies than cwebp 1.0.2. cwebp 1.0.2 has 27 dependencies. cwebp 1.0.3 has just the following five (using the ldd
command):
linux-vdso.so.1 => (0x00007ffeb037e000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f27cf8f6000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f27cf5ed000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f27cf223000)
/lib64/ld-linux-x86-64.so.2 (0x00007f27cff6f000)
And I notice that "libGl.so" (which was missing in your case) is no longer on the list.
Using the ldd
command to my surprise also returns dependencies for the cwebp 0.6.1 executable.
Output:
linux-vdso.so.1 => (0x00007ffd2df9f000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f2bd4476000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f2bd416d000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2bd3da3000)
/lib64/ld-linux-x86-64.so.2 (0x00007f2bd4693000)
I notice that it is the exact same five dependencies here. I'm puzzled why cwebp-103-linux-x86-64 shows up as a "shared library" in my explorer while cwebp-061-linux-x86-64 shows up as an "executable".
I also notice this line in your error log (thank you so much for posting it - much is revealed there!)
cwebp-linux-1.0.2-static: error while loading shared libraries: libjpeg.so.8: cannot open shared object file: No such file or directory
It seems my attempt to build an executable free from dependencies failed!
@rosell-dk Amazing work! Thank you heaps! I am following this. Is there any more info you need from me?
It is really strange. Can you tell me if the cwebp-linux-1.0.2-static file is there? (in wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-static)
(on your un-updated system, if you still have that... - the file names of the binaries where changed in 0.17.2)
I just checked and I still have the un-updated (or old) version of webp-express. ;)
This is the content of the folder wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/
.
The following entries in the error log is puzzles me:
Checking if we have a supplied binary for OS: Linux... We do. We in fact have 3 A total of 3 cwebp binaries where found Detecting versions of the cwebp binaries found (and verifying that they can be executed in the process) Executing: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-shared -version Exec failed (the cwebp binary was not found at path: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-shared) Executing: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-static -version Exec failed (the cwebp binary was not found at path: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-1.0.2-static) Executing: [doc-root]/wp-content/plugins/webp-express/vendor/rosell-dk/webp-convert/src/Convert/Converters/Binaries/cwebp-linux-0.6.1 -version. Result: version: 0.6.1
Three binaries are reported found, but then it is reported that two of them fails because they doesn't exist. That looks like a bug.
Can I have you try again on 0.17.2? I made significant changes in the programming that discovers and executes cwebp binaries. Perhaps the problem is already gone.
Like you ask, I will update everything and then report back on this issue in both cases, if it works flawless or if it breaks. Thank you so much for your work on this. Tremendously appreciated.
Using webp-express on Site A and managed to remote connect to Site B using webp-express on a server that supports webp conversion.
When trying to convert this image
I get this error log from Site B and the last few lines from Site A.
I believe I can fix the execution timeout on Site A easily, however on Site B I have no clue how to tackle the
convert-im6.q16: delegate failed
orsh: 1: gm: not found
or the other errors.When I configure and test the cwebp or gd extension on Site B all works fine per logs, the conversion checks out. Site B is a default, fresh WP install, using the 2019 theme.
Only thing changed there is the permalinks settings being set to a custom
/%category%/%postname%/
and category base being a.
as otherwise Site A would not be able to connect to the API endpoint of Site B correctly.Do you know what is going on?
When I disable webp-express on Site A I can convert the same jpg image just fine to a set of various image sizes. But I would love to be able to serve webp images of course. :wink:
And the other test log.