Arti fails to build on FreeBSD
On FreeBSD, cargo check --all-features
fails with:
error[E0412]: cannot find type `RawNonZeroPid` in module `rustix::process`
--> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/secmem-proc-0.3.3/src/internals/prctl.rs:62:70
|
62 | pub fn is_tracer_present() -> anyhow::Result<Option<rustix::process::RawNonZeroPid>> {
| ^^^^^^^^^^^^^ not found in `rustix::process`
Checking tokio-socks v0.5.2
Checking async-broadcast v0.7.1
For more information about this error, try `rustc --explain E0412`.
error: could not compile `secmem-proc` (lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
- OS/Platform name and version:
FreeBSD freebsd 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64
(running under QEMU) - Arti commit: 2a398f2a
This is because secmem-proc
depends on rustix = 0.38
, but uses RawNonZeroPid
, which was removed in 0.38.0-alpha.1
(see also this commit).
secmem-proc
needs to be updated to use NonZeroI32
instead of RawNonZeroPid
.
Edited by gabi-250