-
Notifications
You must be signed in to change notification settings - Fork 206
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
Provide binary releases #168
Comments
If there's something I can help with, please let me know. We have good experience with using Azure Pipelines for artifact builds from master (which is helpful in these early days of Verible), and uploading the to GH Releases using the same machinery. |
Thanks for offering to help. @hzeller can you help with this? |
We are likely to use Kokoro and/or Travis to do this.
…On Sat, Feb 1, 2020, 9:44 PM David Fang ***@***.***> wrote:
Thanks for offering to help. @hzeller <https://github.com/hzeller> can
you help with this?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#168>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAFFXF5DWTWHOMV6TI6O33RAXNLVANCNFSM4KOU3N4Q>
.
|
Yeah, I just saw you have Travis enabled. Should do the trick as well (artifacts are slightly trickier there). What's important is building with a really old base OS image, at least Ubuntu 16.04. |
So bazel already has a It also looks like bazel already have toolchains targeted at ubuntu 16.04 for RBE -> https://releases.bazel.build/bazel-toolchains.html |
Info here might be useful -> https://docs.bazel.build/versions/2.0.0/platforms.html#defining-constraints-and-platforms |
|
Any opinions on release frequency? It's all development on mainline, no branches at this point. Weekly? |
If you can provide "nightly" builds, i.e. builds which fall out as artifact from master builds on each push that would probably be the best starting point for the development pace at this point. Otherwise weekly releases would probably do the trick as well. |
It is easier to just build every commit. |
@hzeller - If you can figure out the correct |
WIP.
It does compile and link, however, the resulting binary segfaults immediately. Need to investigate further. It requires some trickery to even get it to fully link; just using the For reference, these are the dynamic libraries the regular binary is linking against (on my particular machine):
|
Is that list from the normal dynamic targets? That list of those dynamic libraries seems fine. |
Yes, the normal dynamic target links against that small set of dynamic libraries. I suspect though that on older machines libstc++ comes in a different version. |
Once #179 is merged, precompiled binaries will end up at https://github.com/google/verible/releases |
As #179 is merged, we now have the first binaries at https://github.com/google/verible/releases! Will test on older Linux soon. |
|
I tried to run the
|
On
|
It looks like something like https://github.com/packpack/packpack could be used to build packages for a lot of operating systems... |
The OpenSUSE build service could also be potentially used -> https://en.opensuse.org/openSUSE:Packaging_Bazel |
Done now? |
Still need to figure out how to get binaries which work on Centos versions. |
* Deploy markdown pages to Github pages (including generated output from verilog_lint). See https://mithro.github.io/verible/ for example output. * Deploy precompiled binaries to Github releases. See https://github.com/mithro/verible/releases for example output. GitHub PR #179 Copybara import of the project: - fa92a41 travis: Deploy to github pages and releases. by Tim 'mithro' Ansell <me@mith.ro> - 7f11947 kokoro: Adding copyright headers to scripts. by Tim 'mithro' Ansell <me@mith.ro> Closes #179 PiperOrigin-RevId: 293435701
The libstdc++ issues look like they come from the fact that the compilation happened with the latest gcc, which is not installed by default on the machiens. And the g++ does need a matching libstdc++. I've reduced the requirments on the c++ standard (used to be c++17, now c++11), maybe it is now possible to compile with whatever 'native' compiler there is on the respective distributions ? |
I tried using a much older gcc in #189 but it didn't seem to have much effect.... |
@mithro , I use the dockerfile from here: #78 (comment) to build binaries that are statically linked and work on RHEL/Centos 7. Maybe something in there will be the key to compiling working binaries? Worst case, I guess you could use that docker image to build the binaries? |
Slightly off-topic, but relevant. I found a good resource to check what distributions have what package versions available by default. Here for instance for gcc: https://pkgs.org/download/gcc |
The pull request at #194 should provide binaries for Ubuntu 16.04/17.04/18.04/19.10 and Centos 6/7/8. |
@imphil Can you test the binaries provided at https://github.com/google/verible/releases/tag/v0.0-209-g14ee469 work for you? |
Yes, those releases are working (and have been for quite a while). Thanks! |
It would be very helpful for adoption if Verible could provide binary releases.
To have more people use Verible, e.g. in OpenTitan or Ibex, we need pre-compiled binaries, compiled on a rather old OS to be compatible with old glibc versions. It would be great if you can provide them here (e.g. through GitHub releases), otherwise we need to do that ourselves.
The text was updated successfully, but these errors were encountered: