Giter Site home page Giter Site logo

Comments (7)

stlankes avatar stlankes commented on August 10, 2024 1

Oh, we have to update hermit-sys at crated.io. I will do it tomorrow.

from hermit-rs.

mkroening avatar mkroening commented on August 10, 2024 1

Ah, I understand what's going wrong. Apparently, windows does not respect the internal rust-toolchain.toml in libhermit-rs.

You should be able to work around this issue by downgrading to nightly-2022-10-19, while we figure out a proper fix. 🤔

from hermit-rs.

mkroening avatar mkroening commented on August 10, 2024 1

Ah, yes. This sounded familiar. Manually installing the llvm-tools-preview component for that toolchain should work around the issue. (#374 (comment))

I don't have a local windows setup, but I'll continue experimenting on what we have to change in the build.rs of hermit-sys, so automatic rust-toolchain.toml detection for the kernel works on windows as well: hermit-os/hermit-rs-template#26

from hermit-rs.

MolotovCherry avatar MolotovCherry commented on August 10, 2024 1

llvm-tools-preview

Confirmed that llvm-tools-preview fixes the issue and it builds with nightly-2022-10-19 on 0.4

from hermit-rs.

MolotovCherry avatar MolotovCherry commented on August 10, 2024

Ah, I understand what's going wrong. Apparently, windows does not respect the internal rust-toolchain.toml in libhermit-rs.

You should be able to work around this issue by downgrading to nightly-2022-10-19, while we figure out a proper fix. 🤔

Hmm. I'm still getting problems even on that one. Once it gets to building the kernel,

cargo build --target=x86_64-unknown-none --target-dir R:\Temp\rust\rusty-demo-main-2897717944\x86_64-unknown-hermit\release\build\hermit-sys-68989ed1a852d06d\out\target --no-default-features --features "acpi dhcpv4 fsgsbase pci pci-ids smp tcp" --profile release

(I have this cargo toml)

[target.'cfg(target_os = "hermit")'.dependencies]
hermit-sys = "0.4.0"

[features]
default = ["pci", "pci-ids", "acpi", "tcp", "fsgsbase", "tcp", "smp", "dhcpv4"]
vga = ["hermit-sys/vga"]
dhcpv4 = ["hermit-sys/dhcpv4"]
pci = ["hermit-sys/pci"]
pci-ids = ["hermit-sys/pci-ids"]
acpi = ["hermit-sys/acpi"]
fsgsbase = ["hermit-sys/fsgsbase"]
smp = ["hermit-sys/smp"]
tcp = ["hermit-sys/tcp"]
instrument = ["hermit-sys/instrument"]
trace = ["hermit-sys/trace"]

... With this toolchain as suggested

[toolchain]
channel = "nightly-2022-10-19"
components = [ "rust-src" ]

I get this output

  Building kernel
  $ cargo build --target=x86_64-unknown-none --target-dir R:\Temp\rust\rusty-demo-main-2897717944\x86_64-unknown-hermit\release\build\hermit-sys-68989ed1a852d06d\out\target --no-default-features --features "acpi dhcpv4 fsgsbase pci pci-ids smp tcp" --profile release
     // snip
     Compiling libhermit-rs v0.6.0 (R:\Temp\rust\rusty-demo-main-2897717944\x86_64-unknown-hermit\release\build\hermit-sys-68989ed1a852d06d\out\libhermit-rs-0.6.0)
      Finished release [optimized] target(s) in 8.41s
  Copying R:\Temp\rust\rusty-demo-main-2897717944\x86_64-unknown-hermit\release\build\hermit-sys-68989ed1a852d06d\out\target\x86_64-unknown-none\release\libhermit.a to R:\Temp\rust\rusty-demo-main-2897717944\x86_64-unknown-hermit\release\build\hermit-sys-68989ed1a852d06d\out\target\x86_64\release\libhermit.a
  Exporting symbols
  Error: NotFound
  error: process didn't exit successfully: `R:\Temp\rust\rusty-demo-main-2897717944\x86_64-unknown-hermit\release\build\hermit-sys-68989ed1a852d06d\out\target\debug\xtask.exe build --arch x86_64 --profile release --target-dir R:\Temp\rust\rusty-demo-main-2897717944\x86_64-unknown-hermit\release\build\hermit-sys-68989ed1a852d06d\out\target --no-default-features --features "acpi dhcpv4 fsgsbase pci pci-ids smp tcp"` (exit code: 1)
  thread 'main' panicked at 'assertion failed: status.success()', C:\Users\user\.cargo\registry\src\github.com-1ecc6299db9ec823\hermit-sys-0.4.0\build.rs:110:9
  stack backtrace:
     0: std::panicking::begin_panic_handler
               at /rustc/a24a020e6d926dffe6b472fc647978f92269504e/library\std\src\panicking.rs:575
     1: core::panicking::panic_fmt
               at /rustc/a24a020e6d926dffe6b472fc647978f92269504e/library\core\src\panicking.rs:65
     2: core::panicking::panic
               at /rustc/a24a020e6d926dffe6b472fc647978f92269504e/library\core\src\panicking.rs:115
     3: build_script_build::KernelSrc::download
     4: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
     5: core::ops::function::FnOnce::call_once{{vtable.shim}}
  note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

But nightly-2023-03-15 and the following works flawlessly

[target.'cfg(target_os = "hermit")'.dependencies]
hermit-sys = { git = "https://github.com/hermitcore/rusty-hermit" }

from hermit-rs.

mkroening avatar mkroening commented on August 10, 2024

I fixed the underlying issue in #431. 🎉

from hermit-rs.

mkroening avatar mkroening commented on August 10, 2024

Published as hermit-sys 0.5.1. :)

from hermit-rs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.