-
Notifications
You must be signed in to change notification settings - Fork 11.2k
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
Inconsistent build success across pulls, probably need to track supported compiler and library versions. #834
Comments
Are you saying that the same revision will sometimes build and sometimes fail on the same machine with the same toolchain? Development on this project has been quite hectic. We do have CI checks on Ubuntu 22.04, it's entirely possible that the build would fail on another environment. So my advice would be to post specific commit hashes, the environment used and the error messages you got. |
If a particular commit builds, it will always build on a particular system. It's just that sometimes a commit will build on one of the three, and not the others. I think. I haven't actually compared the exact commits until today when you mentioned it. Right now cc9cee8 builds fine on the above debian and opensuse systems, but not on ubuntu 20.04. I'll try and keep track of it from now and update when it happens. |
Humm. I must have done something very odd on my system between the last successful build and this. That builds just fine in a podman container on that ubuntu host. I'll update if I come across a real issue and it's not just some odd fluke. |
Closing this, please re-open if you can provide details of a build failing. |
I figured it out, and figured I'd share. Nothing to do with the code or even the machine, but with what I had in the source directory itself: TLDR gcc read a file from my build dir with I had been playing with scripts giving an agent a memory, and they stored what they wanted to remember in a file named memory in the source directory. Due to recent advancements in C++, .h is no longer required for header files, so the empty file memory was being included. |
…rg#834) * Do not set `grammar` to `None` for new `LlamaGrammar` objects The `grammar` attribute is written by `init()`, but that method always returns `None`, so `__init__()` would then discard the previously written object. * Add minimal test for grammar parsing
Before going on I should note, when it does build, things run just fine, even on an old Xeon X5675.
I run multiple linux distros and versions, and depending on the changes any given day, AND which distro/version combination, it might build cleanly or spew a ton of errors. The issue here is most likely with versioning/feature checking, but I'm unsure. This time it's from regex, but other times it's other portions: "usr/include/c++/10/bits/regex.tcc:61:26: error:..."
I haven't been formally tracking these yet, so the success rates are basically from memory:
A debian 11 box with gcc-10 seems to have about a 99% success rate.
Ubuntu 20.04 LTS with gcc-9 or gcc-10 seems to have a 50% success rate
openSUSE 15.3 with gcc-7 seems to have about a 90% success rate
Expected Behavior
The build will succeed, or at very least test if the installed compiler and libraries support the features it needs, and report what's missing.
Current Behavior
Depending on the day, a long compiler error, generally not about llama.cpp itself, but about specific c++ features.
Environment and Context
Steps to Reproduce
Run multiple distros,
git pull && make clean && make
, on a daily basisThe text was updated successfully, but these errors were encountered: