-
Notifications
You must be signed in to change notification settings - Fork 50
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
x86_64-pc-windows-gnu build failed #428
Comments
I'm unable to reproduce the error you're reporting using using the aws-lc-rs repo. I believe the problem related to the For reference, you can see the configuration that we use for Cross here, which extends the configuration from our Cross Dockerfile. It's not clear to me what a few of the steps in your configuration are attempting, but I suspect your configuration could be much simpler. Possibly something like:
EDIT: |
Yes, there is no The Dockerfile in this repo, installs Comparing to my own Cross.toml, I only installed |
I put up a draft PR that follows the pattern you use for installing bindgen-cli inside the container. |
I was able to get your repo to cross-build using aws-lc-rs. I posted my changes on this branch. Feel free to adapt parts of that change for your own purposes. I also updated this PR as ready for review. Feel free to contact us if you have any other problems. Thanks! |
I have just merged your changed into my master branch, but still not working well.
CI should always passed. These failed targets are not included in normal CI tests.
Interestingly CI tests in your PR are all passed. WHY?? |
diff --git a/docker/linux-cross/Dockerfile b/docker/linux-cross/Dockerfile
index d17c46cb..5f17c9a5 100644
--- a/docker/linux-cross/Dockerfile
+++ b/docker/linux-cross/Dockerfile
@@ -4,7 +4,7 @@ FROM $CROSS_BASE_IMAGE
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && \
- apt-get install --assume-yes --no-install-recommends build-essential cmake nasm llvm-dev libclang-dev clang && \
+ apt-get install --assume-yes --no-install-recommends build-essential cmake nasm llvm-8-dev libclang-8-dev clang-8 && \
git config --global --add safe.directory '*' && \
rm -rf /tmp/* Otherwise some of the targets may failed with these errors:
|
Ok.. I know why you cannot reproduce. shadowsocks-rust could compile with @justsmth Please try again with I am still investigating what's the key differences between the dependencies. |
Here is the key differences between the two dependency trees: If there are |
rustls v0.23 starts to use aws-lc as the default crypto implementation. But now not all the dependencies are upgraded to the latest rustls. If there are still any older version of rustls exists in the build process, aws-lc may fails. - ref aws/aws-lc-rs#428 - ref aws/aws-lc-rs#427 - ref aws/aws-lc-rs#426
The latest version of clang is actually clang-18: https://releases.llvm.org/download.html The libclang version installed by a recent LTS release of Ubuntu will be newer than clang-8.
This output shows that the problem is that bindgen is unable to locate libclang:
I also had trouble with libclang being located when it's being installed from a "pre-build" in |
Oh! I just now noticed the target your compiling for here:
We've not tested our build for the If this is a platform you'd like us to support, please submit a separate issue requesting support for it. |
Ok, never mind, this was the platform I was running my build tests.
On the other hand, I think the key issue here is that: If compiling with older version of |
Problem:
It could be reproduced in this project: https://github.com/shadowsocks/shadowsocks-rust by running:
Relevant details
AWS-LC for Rust versions or commit: (crates.io aws-lc-sys v0.17.0)
System information: for linux, below info can be collected by running
uname -srvmp
Build log:
The text was updated successfully, but these errors were encountered: