-
Notifications
You must be signed in to change notification settings - Fork 5
Switch to Ubuntu 16.04 based build #191
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
Switch to Ubuntu 16.04 based build #191
Conversation
Building on Ubuntu 18.04 means that later versions of glibc and libstdc++ which prevent usage on base CentOS 7 due to missing symbols.
|
@chris-allan do you have a minimum architecture you target? Previously we used to set the c/cxxflags for |
|
For our use Haswell (~2H2013) or later architecture is definitely acceptable. As far as GCC is concerned that |
Thanks for the information. We'll send another PR for setting the march version and then we'll cut a new release for these changes. |
|
Spoke too soon. Ubuntu 16.04 doesn't look sufficient. I'm not sure exactly why this didn't come up earlier but I may have been glossing over the C++ ABI. With the current build, even on Ubuntu 16.04, |
|
After a little more investigation, definitely completely missed the C++ ABI scenario somehow. Ubuntu 14.04 is out with no images to my knowledge available on Azure Pipelines. Looks like we might have to do something similar to TileDB-Py after all: |
|
@chris-allan okay we'll get the linux binary built inside the manylinux2010 image, please give us a day or so and we'll try to get the build updated. Once we have a snapshot jar to test we'll ping you for validation in your environment. |
|
@Shelnutt2: Don't want to duplicate work but I'm happy to scratch my own itch and work on it. |
|
@chris-allan if you are interested to make the build change for the prebuilt jar we are always welcome of a PR. Please go ahead with making the change for Azure CI. If you run into problems or decide you'd rather not just let us know. We appreciate your contribution! |
|
👍 Currently working on it. Currently running in to issues with the cURL/OpenSSL linking when building using the |
|
@chris-allan feel free to push up what you have and highlight the errors/problems. @ihnorton and I are very familiar with curl build and link problems. Curl is the bane of all our dependencies 😞 . |
|
Thanks, @Shelnutt2. Think I managed to work around the problem. The summary is on glencoesoftware/TileDB-Java@3ecd343 which is part of #194. Happy to discuss more. To do this "properly" I think changes to the TileDB build itself are required. |
During work on adding TileDB support to
bioformats2rawin glencoesoftware/bioformats2raw#57 glibc and libstdc++ missing symbols were noticed in the native code. This was on CentOS 7 which is both our most common deployment platform and the most common Linux distribution in use on the HPC platforms we interact with.Building on Ubuntu 16.04 should mean that CentOS 7 is supported. This does not go as far as TileDB-Py which currently targets CentOS 6 via the use of the
manylinux2010[1] for its binary wheels and by extension supports back to CentOS 6.