sozu-proxy / sozu

Sōzu HTTP reverse proxy, configurable at runtime, fast and safe, built in Rust. It is awesome!
https://www.sozu.io/
GNU Affero General Public License v3.0
3.08k stars 189 forks source link

error[E0432]: unresolved import `std::arch::x86_64` #1137

Open fcdont opened 1 month ago

fcdont commented 1 month ago

Im using Ubuntu 22.04 on ARM64(arch64), i got this error on build

log error[E0432]: unresolved importstd::arch::x86_64` --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:127:32 127 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:93:1 93 compile_lookup!(pub tchar => [0x00..0x20, '('..')', '['..']', '{', '}', ',', ':'..'@', 0x7F..LAST_INVALID_CHAR]); ---------------------------------------------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:183:32 183 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:93:1 93 compile_lookup!(pub tchar => [0x00..0x20, '('..')', '['..']', '{', '}', ',', ':'..'@', 0x7F..LAST_INVALID_CHAR]); ---------------------------------------------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:127:32 127 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:117:1 117 compile_lookup!(pub vchar => [0x00..0x20, 0x7F..LAST_INVALID_CHAR]); ------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:183:32 183 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:117:1 117 compile_lookup!(pub vchar => [0x00..0x20, 0x7F..LAST_INVALID_CHAR]); ------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:127:32 127 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:143:1 143 compile_lookup!(pub ck_char => [0x00..0x1F, ';', '=', 0x7F..LAST_INVALID_CHAR]); ------------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:183:32 183 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:143:1 143 compile_lookup!(pub ck_char => [0x00..0x1F, ';', '=', 0x7F..LAST_INVALID_CHAR]); ------------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:127:32 127 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:144:1 144 compile_lookup!(pub cv_char => [0x00..0x1F, ';', 0x7F..LAST_INVALID_CHAR]); -------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:183:32 183 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:144:1 144 compile_lookup!(pub cv_char => [0x00..0x1F, ';', 0x7F..LAST_INVALID_CHAR]); -------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:127:32 127 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:168:1 168 compile_lookup!(pub achar => [0x00..0x08, 0x0A..0x1F, 0x7F..LAST_INVALID_CHAR]); ------------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0432]: unresolved import std::arch::x86_64 --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/utils.rs:183:32 183 use std::arch::x86_64::{ ^^^^^^ could not find x86_64 in arch
::: /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/kawa-0.6.7/src/protocol/h1/parser/primitives.rs:168:1 168 compile_lookup!(pub achar => [0x00..0x08, 0x0A..0x1F, 0x7F..LAST_INVALID_CHAR]); ------------------------------------------------------------------------------- in this macro invocation
= note: this error originates in the macro `compile_lookup` (in Nightly builds, run with -Z macro-backtrace for more info)

For more information about this error, try rustc --explain E0432. error: could not compile kawa (lib) due to 10 previous errors warning: build failed, waiting for other jobs to finish...`

is it not gonna work for ARM arch? got this error on build

fcdont commented 1 month ago

I tried default rustup and nightly, still same

Wonshtrum commented 1 month ago

Hi, this is an ongoing issue, and not well documented: Sozu uses kawa to parse http and is accelerated by default with x86 SIMD instructions (SSE). If your target doesn't support SSE you can disable them by removing the "simd" feature of Sozu. It is currently the only default feature, so you can compile Sozu with:

cargo build --release --no-default-features