Since @LkpPo reported problems creating new threads, and @gchiu seems to be MIA the last 4 days on holiday, I thought I’d create a new thread to offer any building support. This is generally done on StackOverflow, but we can do it here as well.
We haven’t done a bootstrap to a system we don’t have binaries for in a while (!)
The idea is that there are some generated files, and to generate these files you need a working Rebol. But what you can do is you can be on one machine and tell it to build a “prep” directory with all these files for another target machine. Then you move that folder over and build with a C compiler, and get your executable. Now you’re bootstrapped: you can use that executable for any subsequent builds.
This hasn’t happened since we went to an “all Rebol” build system. The build system is big…Shixin wrote it and I think probably considered working on it as annoying as I would. So it didn’t really get documentation or peer review. But on the upside, it is all Rebol - so you don’t need GNU make or other tools installed. And when we wrangle it to try and make it better we can use Rebol to do so…so it doesn’t feel like as much a waste of time as fiddling with CMake/etc. It provides experience that feeds back into improvement of the language, and a much-needed “big” test case.
Debian is probably the best system to try first
You should be able to go to the %make/ directory and type:
That will run a Ren-C executable built at commit 8994d23. There are various options you can use, here’s an example of settings I use for development on Linux:
./r3-linux-x64-8994d23 make.r config: configs/generic-c++.r optimize: 0 rigorous: true debug: sanitize standard: c++17 target: makefile static: yes
That generates a heavily instrumented build with Address Sanitizer, that runs slow but catches a lot of issues. It uses C++ to build, which adds extra checks at compile-time, though is equivalent at runtime to the C build.
I’m not sure what your specific areas of interest or skills are, but reply to this thread if you need any help… or ideally, join StackOverflow and ask a couple of Q&A there. We can help upvote you to get chat privileges (it’s very easy, only 20 points).