From Nothing To Hello World
This page explain the quickest way to test a program on Redox. This tutorial doesn't build Redox from source.
In this example we will use a "Hello World" program written in Rust.
-
建立
tryredox資料夾。mkdir -p ~/tryredox -
導航至
tryredox資料夾。cd ~/tryredox -
下載用於組態 Podman 的腳本,並下載 Redox 建置系統。
curl -sf https://gitlab.redox-os.org/redox-os/redox/raw/master/podman_bootstrap.sh -o podman_bootstrap.sh -
執行下載的腳本。
time bash -e podman_bootstrap.sh -
在當前外殼中啟用 Rust 工具鏈。
source ~/.cargo/env -
導航至 Redox 建置系統目錄。
cd ~/tryredox/redox -
建立
.config檔案,並增添REPO_BINARY環境變數來下載預編譯軟體包。echo "REPO_BINARY?=1 \n CONFIG_NAME?=my-config" >> .config -
建立
hello-world配方資料夾。mkdir recipes/other/hello-world -
Create the
sourcefolder for the recipe.mkdir recipes/other/hello-world/source -
Navigate to the recipe's
sourcefolder.cd recipes/other/hello-world/source -
Initialize a Cargo project with the "Hello World" string.
cargo init --name="hello-world" -
建立
hello-world配方組態。cd ~/tryredox/redoxnano recipes/other/hello-world/recipe.toml -
Add the following to the recipe configuration:
[build] template = "cargo" -
建立
my-config檔案系統組態。cp config/x86_64/desktop.toml config/x86_64/my-config.toml -
Open the
my-configfilesystem configuration file (i.e.,config/x86_64/my-config.toml) and add thehello-worldpackage to it.[packages] # Add the item below hello-world = "source" -
編譯 Hello World 程式並更新 Redox 映像檔。
time make prefix rp.hello-world -
Start the Redox virtual machine without a GUI.
make qemu gpu=no -
在 Redox 登入畫面,於使用者名稱欄位輸入「user」並按下 Enter。
-
執行「Hello World」程式。
helloworld -
關閉 Redox 虛擬機。
sudo shutdown