-
-
Notifications
You must be signed in to change notification settings - Fork 266
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
v5.0.0 PECL build fails on Windows #440
Comments
I investigated a bit on the weekend, but the error message is strange to me as i am uncertain how these functions are referenced in |
There is a problem with the build system. phpize builds are working fine, but in-tree builds (and these are done for PECL) don't. For some reason, AC_DEFINE doesn't work. I need to investigate closer (planned for today or tomorrow), but it seems a viable workaround would be to set CFLAGS with |
thx a lot @cmb69 just let me know what i can do and if we should go with CFLAGS once you have finished your investigation and i will try to adapt it 🙇 |
Okay, I checked that more thoroughly, and this part of the Windows build system is quite messy. While on other systems the configuration is written to There is more to this, though. This isn't a Windows specific issue; if I build ext/rdkafka with librdkafka 1.4.2 on Ubuntu 20.10, I get:
It seems to me that a proper fix would be to swap these two lines. |
Oh, I forgot to mention that there is actually an issue regarding the PECL builds for Windows: while version 4.x is supposed to be built with librdkafka 1.2.1, 5.x is supposed to use librdkafka 1.5.3. Unfortunately, the automated build system doesn't support different library versions for different extension versions, so I need to swap the libraries for version 4/5 builds manually. Not a real problem, but if a new rdkafka version 5.x is released, the build can initially fail, because librdkafka defaults to 1.2.1. I can trigger a second build in that case. |
@cmb69 thx a lot for your effort and the elaborate explanation , i will it as soon as i find time. Oh i wasn't aware of that regarding libraries, i will do more investigation to see if it would be feasible to go with the same, manual switchting seems like a hassle 😅 |
It is likely feasible to build rdkafka 4.x with librdkafka 1.5.3, but for stability reasons, it still may not be desired. |
Thanks to the tip from @cmb69 about swapping those two lines, after some tinkering I've managed to build the DLL. I'm attaching my build below for anybody on Windows wanting to migrate to PHP v8. You'll need:
After that you should see:
php_rdkafka.dll_v5.0.0_x64_php8.0.1_NTS.zip |
Thx guys, sry this slipped my mind. I created a PR for it |
@arnaud-lb i think it could be beneficial to build the windows dll also with an |
PECL build fails for latest v5.0.0 DLL build.
See logs at https://windows.php.net/downloads/pecl/releases/rdkafka/5.0.0/logs/php_rdkafka-5.0.0-8.0-nts-vs16-x64-logs.zip
I've replicated the error locally with librdkafka v1.5.3, v1.4.4 , v1.3.0, v0.11.6 .
The text was updated successfully, but these errors were encountered: