Replies: 10 comments
-
How are you linking the code? It looks like you are invoking the linker yourself rather than having rustc invoke it for you. You may be missing necessary linker flags. |
Beta Was this translation helpful? Give feedback.
-
After compiling it in rustc, I'm using the command |
Beta Was this translation helpful? Give feedback.
-
How did you get that |
Beta Was this translation helpful? Give feedback.
-
What would the config need to look like in order to do that? |
Beta Was this translation helpful? Give feedback.
-
In [lib]
crate-type = ["staticlib"] |
Beta Was this translation helpful? Give feedback.
-
Recompiling it with that change, as well as changing the file name from main to lib, then copying the .a file from |
Beta Was this translation helpful? Give feedback.
-
The bootloader crate only supports booting x86_64 kernels, not 32-bit kernels. |
Beta Was this translation helpful? Give feedback.
-
I am not using the bootloader crate at all. As I mentioned before, I'm using my own bootloader |
Beta Was this translation helpful? Give feedback.
-
Ah, I missed that! In that case, you probably have to debug your bootloader. You can either connect gdb and step through the assembly to see where it fails, or you use QEMU's |
Beta Was this translation helpful? Give feedback.
-
(I migrated this issue to a discussion because it is not an issue of the blog itself. I also updated the title to clarify that this is related to a custom 32-bit bootloader.) |
Beta Was this translation helpful? Give feedback.
-
Hi! I'm using i686 to compile for the OS I'm working with. My target specification is as follows:
I'm currently compiling the example code from Post-02 on printing bytes to VRAM. The script successfully compiles in Rust, but when linking it with my bootloader externally, it produces the following error:
Would really appreciate some help! My main.rs file is as follows:
Beta Was this translation helpful? Give feedback.
All reactions