-
Notifications
You must be signed in to change notification settings - Fork 55
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
WIP: statically linked build for non Alpine Linux x86_64 #33
base: main
Are you sure you want to change the base?
Conversation
@kalinkrustev quick question, can I use the target |
The |
@@ -22,10 +22,10 @@ tree-sitter-bash = "0.20" | |||
tree-sitter-c = "0.20" | |||
tree-sitter-cpp = "0.20" | |||
tree-sitter-c-sharp = "0.20" | |||
tree-sitter-elixir = "0.1" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happened here? 😄
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As mentioned in the PR description, this version of the module used C++, so I changed it to use the git repository, where the module is rewritten in C, so that it can compile with musl.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is why the current musl version does not work -- it requires libstdc++.so.6
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably should leave a comment above each of these tree-sitter dependencies to state why they are pulling in a specific version from github.
@kalinkrustev and @McPatate see my comment, here: #25 (comment) still does not work with older versions of |
I tested the version from @kalinkrustev's fork and was able to get it running fine. What do we need to change to get this PR merged? |
@McPatate I am really keen on using this fix as trying to orchestrate other forks is a bit cumbersome. Would be grateful if you could expedite the merge. Cheers! |
Let me finish up some fixes for |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not convinced we have to modify the CI yaml. The fix looks like it's about the tree sitter crates using C++
- os: ubuntu-22.04 | ||
target: x86_64-unknown-linux-musl | ||
code-target: linux-x64 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did you add this target?
Maybe we can break out the removal of the tree sitter C++ dependency into it's own PR and then we can reason about the changes seperately. |
This was going to work very well, but the recent addition of tree-sitter broke the build, as it has few modules written in C++ and they fail to build with Rust and musl. For two of them I have found the git repo already contained code rewritten in C, so only Ruby didn't, so I disabled it in the fork. I could not find any solution how to build C++ with Rust and musl.
Below is the error related to C++
tree-sitter-ruby
code. Similar ones happened fortree-sitter-elixir
,tree-sitter-html