-
-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Request for a quick start docs #25
Comments
The process is currently a bit tedious - I plan on simplifying it in the future, and/or making an installer. Installing dependencies, building the project, building and running examples
Adding examples / building arbitrary codeThe "proper" installation (integrating it with the rest of the system) process is currently quite brittle and tedious. It involves a bit of manual setup (moving files around, passing some arguments to cargo). In the future, this will be automated, but it currently is not. However, there is an easier way. The test harness does those things automatically, but it is an internal testing tool. Still, you can modify the examples provided and insert a small bit of code to make the tester build anything. This way of building things works and is very reliable, but is not the ideal solution. In Then go to the root directory of the project (not the crate you are building!), and run Building the standard libraryIn order to use the standard library in your crate, you will have to create a file named
This will tell The build process should take at most a couple of minutes (it may finish much faster, depends on your CPU and version of ILASM). If any error messages show up on the screen, that is OK. Some parts of Rust are not supported, and the codegen will print an error when encountering them. After the build finishes, you should have an executable file within I know this is probably quite convoluted, so fell free to ask any questions. |
Thank you for the guide—it worked! I've also submitted a PR at #26 to enhance the experience, hoping it will be useful. |
I have made an updated quick-start guide. |
Why is this? Any plans to change it to depend on stable version at some point? |
This is sadly not something I have control over. The internal Rust APIs constantly change, and the project needs to be updated every time this happens. For example,
I could try to stick to a specific nightly version, but that would still require me to update at some point. Also, GitHub actions only have the newest nightly version, so in order to use them, the project needs to be kept up to date. |
You seem to be describing the difference or challenge about some nightly from the next day breaking compatibility with the nightly of the previous day, but I was talking about stable vs nightly. |
The compiler-internal APIs I use are nightly-only, and will never be stable. If the project ever gets included in the Rust compiler repo, then it might work on stable(since it will be a part of the compiler). Until then - it sadly can't run stable Rust :(. |
Ah, now I understood, thanks. |
Hello, I'm excited about this project! However, I'm not sure how to get it up and running.
Could you provide a quick guide or walkthrough for getting started, such as compiling a
hello_world
example? Specifically, with everything set up for rustc already in place, how do I integrate it with rustc_codegen_clr?The text was updated successfully, but these errors were encountered: