Env 是 RT-Thread 對源碼進行配置和裁剪、生成工程的工具,然而文檔中的配置過程主要針對 Windows 系統,并沒有對 Linux 系統的配置進行詳細的介紹,這里簡要介紹其在 Linux 下的配置與使用方法。
Env 工具本質上是一組 Python腳本,它的 Windows 版本中包含運行腳本的全套的工具和環境,而 Linux 版則只包含腳本本身,在使用 Env 工具前,我們需要先自行安裝相關的工具。
若您使用的是 Ubuntu 系統,可參考官方倉庫中的配置流程使用腳本進行配置,若您使用的是其他發行版,則根據自己的需要安裝工具。
想要正常運行 Env 工具和編譯工程,您至少需要在系統中安裝 python3, scons, gcc, git, ncurses,以及編譯您的目標平臺的 bsp 所需的交叉編譯工具鏈。請使用包管理器或其他方法自行安裝這些軟件。
安裝完畢這些軟件后,前往您想編譯的目標平臺所對應的 bsp 目錄(這里我使用的 bsp 是 rt-thread/bsp/qemu-virt64-riscv), 運行 scons --menuconfig, 則會自動的下載 Env 工具,并進入 RT-Thread 的配置界面,這里我們可以暫時不進行配置,退出即可。
運行完畢后,Env 工具會被安裝在當前用戶的 ~/.env 目錄中。
使用
Env 工具在下載時,會在~/.env 目錄下生成 env.sh 文件。若您使用 bash 或者其他支持 bash 語法的 shell(如 zsh),則您可通過運行 source ~/.env/env.sh 來引入 Env 的環境變量。
若您使用 fish,則 Env 在安裝過程中還會生成一個 env.fish 文件。由于 fish 并不支持 ‘bash’ 設置環境變量的語法,當使用 fish 時,需要運行 source ~/.env/env.fish 引入環境變量。
在 Env 中,我們可直接運行的命令的只有 menuconfig 與 pkgs,它們都是對 env.py 的調用。menuconfig 命令可打開 RT-Thread 配置頁面,效果與直接運行 scons --menuconfig 相同。pkgs 命令可用于管理在線包,使用方法參見其他教程,不再贅述。
編譯工程
在 bsp 目標平臺目錄下,運行 menuconfig,進行我們需要的配置,配置完畢后選擇 保存為 .config 文件。最后即可使用 scons 編譯工程。
直接運行 scons 時,可能會產生找不到編譯器、編譯失敗等錯誤。可以使用環境變量和 scons 的參數指定編譯器的路徑和前綴,下面將演示使用環境變量和使用參數指定編譯器的方式。
(也可選擇將環境變量直接添加在安裝時生成的 env.sh 或 env.fish 中,這樣添加后可以直接運行 scons 而不產生報錯。)類似于 make, scons 也能使用 -j線程數 的參數開啟多線程編譯,加快編譯速度。scons 的更多參數,可在 rt-thread/tools/options.py 文件中查看。
編譯得到目標文件后,即可燒錄到目標平臺中。
-
Linux系統
+關注
關注
4文章
591瀏覽量
27356 -
python
+關注
關注
56文章
4782瀏覽量
84460 -
Shell
+關注
關注
1文章
363瀏覽量
23297 -
RT-Thread
+關注
關注
31文章
1273瀏覽量
39926
發布評論請先 登錄
相關推薦
評論