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

Fix MinGW Travis build issues #3607

Merged
merged 1 commit into from
Nov 5, 2021
Merged

Fix MinGW Travis build issues #3607

merged 1 commit into from
Nov 5, 2021

Conversation

neptoess
Copy link
Contributor

@neptoess neptoess commented Nov 4, 2021

Relative discussion in #3130

@edenhill edenhill merged commit c0cfc24 into confluentinc:master Nov 5, 2021
@edenhill
Copy link
Contributor

edenhill commented Nov 5, 2021

Perfect, thank you!

@@ -50,6 +50,3 @@ cp ./librdkafkacpp-static.a ../dest/lib/librdkafka++-static.a
popd
rm -rf ./mergescratch

export PATH="$PWD/dest/bin:/mingw64/bin/:${PATH}"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

late comment, but these should be moved for the dynamic build script too.

@edenhill
Copy link
Contributor

Hey @neptoess , pinging you here in lack of better communication alternatives:
The dynamic mingw build is failing (silently) because msys2 now uses gcc 11 which introduces a new _ZSt28__throw_bad_array_new_lengthv symbol, but the libstdc++ on the system is compiled with an older gcc that does not have this symbol, so trying to execute the test runner fails silently.
It is basically this issue:
stan-dev/pystan#294

But I'm not sure that solution (symlink/replace) is viable for our msys2 builder.

Do you have any ideas?

https://app.travis-ci.com/github/edenhill/librdkafka/jobs/564513967

@neptoess
Copy link
Contributor Author

Added you on LinkedIn for a communication alternative (can also provide email if you'd like).
Let me play around with the build a bit on my local machine and see if I can come up with anything.

@neptoess
Copy link
Contributor Author

v1.9.0-PRE11.build.log
Upgraded my msys2 packages and did the build. As the old joke goes, "works on my machine".

I also just realized that the build you linked was the dynamic build (pinging @ed-alertedh @edbordin since he was involved there), but the static build worked (https://app.travis-ci.com/github/edenhill/librdkafka/jobs/564513968). The build log you linked seems to cut off without even attempting to run the tests. Bizarre.

Adding a $msys2 pacman -Q to the end of travis-before-install.sh might be useful, so we can easily see exactly which packages, and which versions, are installed during the build.

@edenhill
Copy link
Contributor

The build log you linked seems to cut off without even attempting to run the tests. Bizarre.

Yeah, turns out linkage errors are not emitted to the shell, the process just exits with a 127 return code.
Running it with strace, locally, did however show the symbol issue.

Do you think it would be possible just to version pin the gcc toolchain to a 10 release?

@neptoess
Copy link
Contributor Author

Do you think it would be possible just to version pin the gcc toolchain to a 10 release?

That's kind of nasty (https://www.msys2.org/docs/package-management/#installing-a-specific-version-of-a-package-or-a-stand-alone-packages), but I'll play around with the dynamically linked build locally and see what I can figure out.

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