This repository has been archived by the owner on Oct 13, 2023. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 91
Install musl-tools #102
Labels
enhancement
New feature or request
Comments
facebook-github-bot
pushed a commit
to facebook/relay
that referenced
this issue
Jan 19, 2022
Summary: This PR attempts to fix #3725 and #3739. A new target `x86_64-unknown-linux-musl` has been added to `ci.yml` along with the additional `musl-tools` package (can be removed in the future when [this issue](actions-rs/toolchain#102) is resolved) and the `hyper-tls/vendored` feature which allow to build openssl-sys package for the new target. I ended up with building directly on GitHub Action VM without custom docker image because it allows to implement it just as a new target in matrix. Building in docker image requires a [separated job](https://github.com/ch1ffa/relay/blob/1c4651ff81cb901a487e4d9ca0a719058833f5a0/.github/workflows/ci.yml#L133). [detect-libc](https://www.npmjs.com/package/detect-libc) is using for detecting correct platform. Compiled binary has been tested inside `node:alpine` image. I'm not sure how to test it in the Bazel Sandbox, maybe it is better to ask the issue author. Pull Request resolved: #3754 Test Plan: Imported from GitHub, without a `Test Plan:` line. **Static Docs Preview: relay** |[Full Site](https://our.intern.facebook.com/intern/staticdocs/eph/1642521860/relay/)| |**Modified Pages**| Reviewed By: kassens Differential Revision: D33622425 Pulled By: alunyov fbshipit-source-id: 8c16074f2d15fd400ad657cd2497fde85b54ef6d
likebreath
added a commit
to likebreath/cloud-hypervisor
that referenced
this issue
Feb 11, 2022
With enabling the `vendered-openssl` feature, we can now cross-build the `test_infra` crate for "musl" and "aarch64" targets. In this way, we can remove the `test_infra` crate from the "exclude" list, so that this crate can be checked and processed by "cargo clippy" and "cargo fmt". More details can be found: https://docs.rs/openssl/latest/openssl/#vendored As 'musl-gcc' is required, this commit also installs the `musl-tools` package for our "build" github action on the musl target [1]. [1] actions-rs/toolchain#102 Signed-off-by: Bo Chen <chen.bo@intel.com>
likebreath
added a commit
to likebreath/cloud-hypervisor
that referenced
this issue
Feb 14, 2022
With enabling the `vendered-openssl` feature, we can now cross-build the `test_infra` crate for "musl" and "aarch64" targets. In this way, we can remove the `test_infra` crate from the "exclude" list, so that this crate can be checked and processed by "cargo clippy" and "cargo fmt". More details can be found: https://docs.rs/openssl/latest/openssl/#vendored As 'musl-gcc' is required, this commit also installs the `musl-tools` package for our "build" github action on the musl target [1]. [1] actions-rs/toolchain#102 Signed-off-by: Bo Chen <chen.bo@intel.com>
likebreath
added a commit
to likebreath/cloud-hypervisor
that referenced
this issue
Feb 16, 2022
With enabling the `vendered-openssl` feature, we can now cross-build the `test_infra` crate for "musl" and "aarch64" targets. In this way, we can remove the `test_infra` crate from the "exclude" list, so that this crate can be checked and processed by "cargo clippy" and "cargo fmt". More details can be found: https://docs.rs/openssl/latest/openssl/#vendored As 'musl-gcc' is required, this commit also installs the `musl-tools` package for our "build" github action on the musl target [1]. [1] actions-rs/toolchain#102 Signed-off-by: Bo Chen <chen.bo@intel.com>
likebreath
added a commit
to likebreath/cloud-hypervisor
that referenced
this issue
Feb 17, 2022
With enabling the `vendered-openssl` feature, we can now cross-build the `test_infra` crate for "musl" and "aarch64" targets. In this way, we can remove the `test_infra` crate from the "exclude" list, so that this crate can be checked and processed by "cargo clippy" and "cargo fmt". More details can be found: https://docs.rs/openssl/latest/openssl/#vendored As 'musl-gcc' is required, this commit also installs the `musl-tools` package for our "build" github action on the musl target [1]. [1] actions-rs/toolchain#102 Signed-off-by: Bo Chen <chen.bo@intel.com>
rbradford
pushed a commit
to cloud-hypervisor/cloud-hypervisor
that referenced
this issue
Feb 17, 2022
With enabling the `vendered-openssl` feature, we can now cross-build the `test_infra` crate for "musl" and "aarch64" targets. In this way, we can remove the `test_infra` crate from the "exclude" list, so that this crate can be checked and processed by "cargo clippy" and "cargo fmt". More details can be found: https://docs.rs/openssl/latest/openssl/#vendored As 'musl-gcc' is required, this commit also installs the `musl-tools` package for our "build" github action on the musl target [1]. [1] actions-rs/toolchain#102 Signed-off-by: Bo Chen <chen.bo@intel.com>
rbradford
added a commit
to rbradford/cloud-hypervisor
that referenced
this issue
Mar 3, 2022
Needed since: commit 0ab4097 Author: Bo Chen <chen.bo@intel.com> Date: Thu Feb 10 18:29:53 2022 -0800 test_infra: Enable cross-build for "musl" and "aarch64" targets With enabling the `vendered-openssl` feature, we can now cross-build the `test_infra` crate for "musl" and "aarch64" targets. In this way, we can remove the `test_infra` crate from the "exclude" list, so that this crate can be checked and processed by "cargo clippy" and "cargo fmt". More details can be found: https://docs.rs/openssl/latest/openssl/#vendored As 'musl-gcc' is required, this commit also installs the `musl-tools` package for our "build" github action on the musl target [1]. [1] actions-rs/toolchain#102 Signed-off-by: Bo Chen <chen.bo@intel.com> Signed-off-by: Rob Bradford <robert.bradford@intel.com>
rbradford
added a commit
to cloud-hypervisor/cloud-hypervisor
that referenced
this issue
Mar 3, 2022
Needed since: commit 0ab4097 Author: Bo Chen <chen.bo@intel.com> Date: Thu Feb 10 18:29:53 2022 -0800 test_infra: Enable cross-build for "musl" and "aarch64" targets With enabling the `vendered-openssl` feature, we can now cross-build the `test_infra` crate for "musl" and "aarch64" targets. In this way, we can remove the `test_infra` crate from the "exclude" list, so that this crate can be checked and processed by "cargo clippy" and "cargo fmt". More details can be found: https://docs.rs/openssl/latest/openssl/#vendored As 'musl-gcc' is required, this commit also installs the `musl-tools` package for our "build" github action on the musl target [1]. [1] actions-rs/toolchain#102 Signed-off-by: Bo Chen <chen.bo@intel.com> Signed-off-by: Rob Bradford <robert.bradford@intel.com>
Any comments on this? |
Yes, I would think so.
so, not and insurmountable problem, but still would be nice to have them out of the box with |
Wait, so those musl tools would also allow cmake to cross compile for it with I found this issue when I need to be able to compile some C code in github actions for these presets:
|
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Do the checklist before filing an issue:
actions-rs
Actions?If you think it's a problem related to Github Actions in general, use GitHub Community forum instead: https://github.saobby.my.eu.orgmunity
(I don't speak TypeScript...)
Motivation
When setting up the toolchain for any target that ends in
-linux-musl
, pleaseapt install musl-tools
as part of the toolchain setup. Rust dependencies that usecc
to compile C code will expectmusl-gcc
to be installed.Workflow example
No changes needed.
Additional context
musl-gcc
is a thin wrapper around GCC that sets things up for compilation on musl. Many Rust packages require it to be installed when building for anymusl
target.The text was updated successfully, but these errors were encountered: