|
1 | 1 | # AARCH64 工作模式使用 |
2 | | - |
3 | 2 | - 当开发者需要基于 Phytium 系列芯片进行开发时,可以从以下几个步骤出发配置芯片 |
4 | | - |
5 | 3 | ## 1. 准备编译环境 |
6 | | - |
7 | 4 | - 在aarch64目录下创建tools文件夹,用于存放编译链,目前支持在以下两种环境进行开发 |
8 | 5 | ```shell |
9 | 6 | mkdir tools |
10 | 7 | ``` |
11 | 8 | 注:使用RT-Smart编译链也可编译RT-Thread,但当前不支持C++ |
12 | | - |
13 | 9 | ### Ubuntu 环境 |
14 | | - |
15 | 10 | #### RT-Thread |
16 | | - |
17 | 11 | - 点击[下载编译链工具](https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz)压缩包,放置在tools目录下 |
18 | | - |
19 | 12 | - 在tools目录下,使用tar命令解压缩 |
20 | 13 | ```shell |
21 | 14 | tar xvf gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz |
22 | 15 | ``` |
23 | | - |
24 | 16 |  |
25 | | - |
26 | 17 | - 返回`aarch64`目录,运行`thread-env.sh脚本`,生效环境变量 |
27 | 18 | ```shell |
28 | 19 | source ./thread-env.sh |
29 | 20 | ``` |
30 | | - |
31 | 21 | - 如下所示是`aarch64`编译相关的环境变量,运行`scons`前要确保环境变量设置正确 |
32 | | - |
33 | 22 |  |
34 | | - |
35 | 23 | #### RT-Smart |
36 | | - |
37 | 24 | - 点击[下载编译链工具](https://github.com/RT-Thread/toolchains-ci/releases/tag/v1.7)压缩包,放置在tools目录下 |
38 | | - |
39 | 25 |  |
40 | | - |
41 | 26 | - 在tools目录下,使用tar命令解压缩 |
42 | 27 | ```shell |
43 | 28 | tar jxvf aarch64-linux-musleabi_for_x86_64-pc-linux-gnu_stable.tar.bz2 |
44 | 29 | ``` |
45 | | - |
46 | 30 |  |
47 | | - |
48 | 31 | - 返回`aarch64`目录,运行`smart-env.sh`脚本,生效环境变量 |
49 | 32 | ```shell |
50 | 33 | source ./smart-env.sh |
51 | 34 | ``` |
52 | | - |
53 | 35 | - 如下所示是`aarch64`编译相关的环境变量,运行`scons`前要确保环境变量设置正确 |
54 | | - |
55 | 36 |  |
56 | | - |
57 | 37 | - 输入以下指令进行编译,初次编译会拉取`phytium_standalone_sdk工具包`,请确保当前环境下网络畅通 |
58 | 38 | ```shell |
59 | 39 | scons -j8 |
60 | 40 | ``` |
61 | 41 |  |
62 | | - |
63 | 42 | - 完成编译之后目录下将会生成以下几个文件 |
64 | 43 | ``` |
65 | 44 | rtthread_a64.bin |
66 | 45 | rtthread_a64.elf |
67 | 46 | rtthread_a64.map |
68 | 47 | ``` |
69 | 48 |
|
| 49 | +- 若需切换版本进行调试,请先在`bsp\phytium\libraries\phytium_standalone_sdk`目录下删除现有的`phytium_standalone_sdk`工具包,然后重新执行上述指令以拉取指定版本。 |
| 50 | + |
70 | 51 | ### RT-Thread env 环境 |
71 | 52 |
|
72 | 53 | #### RT-Thread |
73 | 54 |
|
74 | | -- 点击[下载编译链工具](https://developer.arm.com/-/media/Files/downloads/gnu/11.2-2022.02/binrel/gcc-arm-11.2-2022.02-mingw-w64-i686-aarch64-none-elf.zip)压缩包,放置在tools目录下 |
| 55 | + |
| 56 | + |
| 57 | + |
| 58 | + |
75 | 59 |
|
| 60 | + |
| 61 | + Expand Down |
| 62 | + |
| 63 | + |
| 64 | + |
| 65 | +- 点击[下载编译链工具](https://developer.arm.com/-/media/Files/downloads/gnu/11.2-2022.02/binrel/gcc-arm-11.2-2022.02-mingw-w64-i686-aarch64-none-elf.zip)压缩包,放置在tools目录下 |
76 | 66 | - 在tools目录下,将下载好的编译链工具压缩包解压 |
77 | | - |
78 | | - |
79 | 67 | - 返回`aarch32`目录,运行`thread-env.bat`脚本,生效环境变量 |
80 | 68 | ```shell |
81 | 69 | ./thread-env.bat |
82 | 70 | ``` |
83 | | - |
84 | 71 | - 如下所示是`aarch32`编译相关的环境变量,运行`scons`前要确保环境变量设置正确 |
85 | | - |
86 | 72 |  |
87 | | - |
88 | 73 | #### RT-Smart |
89 | | - |
90 | 74 | - 点击[下载编译链工具](https://download.rt-thread.org/download/rt-smart/toolchains/aarch64-linux-musleabi_for_i686-w64-mingw32_latest.zip |
91 | 75 | )压缩包 |
92 | | - |
93 | 76 | - 在tools目录下,将下载好的编译链工具压缩包解压 |
94 | | - |
95 | 77 |  |
96 | | - |
97 | 78 | - 运行脚本smart-env.bat脚本,脚本生效环境变量 |
98 | 79 | ```shell |
99 | 80 | .\smart-env.bat |
100 | 81 | ``` |
101 | | - |
102 | 82 | - 输入以下指令进行编译,初次编译会拉取`phytium_standalone_sdk工具包`,请确保当前环境下网络畅通 |
103 | 83 | ```shell |
104 | 84 | scons -j8 |
105 | 85 | ``` |
106 | 86 |  |
107 | | - |
108 | 87 | - 完成编译之后目录下将会生成以下几个文件 |
109 | 88 | ``` |
110 | 89 | rtthread_a64.bin |
111 | 90 | rtthread_a64.elf |
112 | 91 | rtthread_a64.map |
113 | 92 | ``` |
114 | | - |
115 | 93 | ## 2. 如何选择开发板 |
116 | | - |
117 | 94 | >注:在 RT-Thread env 环境下使用`menuconfig`指令即可打开配置菜单,在Ubuntu下需要使用`scons --menuconfig` |
118 | 95 | - 使用`scons --attach=?`查看当前支持的开发板 |
119 | 96 |  |
120 | | - |
121 | 97 | - 以`E2000Q_DEMO`开发板为例,进入aarch64目录后,运行`scons --attach=board.e2000q_demo_rtthread`加载默认的`rtconfig.h`, 然后输入下列命令,进入`menuconfig`进一步配置 |
122 | | - |
123 | 98 | ```shell |
124 | 99 | scons --menuconfig |
125 | 100 | ``` |
126 | | - |
127 | 101 | ## 3. 如何选择驱动 |
128 | | - |
129 | 102 | ```shell |
130 | 103 | scons --menuconfig |
131 | 104 | ``` |
132 | | - |
133 | 105 | 开发者通过以下选项进行驱动的使能 |
134 | 106 | ``` |
135 | 107 | Hardware Drivers Config > On-chip Peripheral Drivers |
136 | 108 | ``` |
137 | | - |
138 | 109 |  |
139 | | - |
140 | 110 | ## 4. 开启SDK中内部调试信息 |
141 | | - |
142 | 111 | ```shell |
143 | 112 | scons --menuconfig |
144 | 113 | ``` |
145 | | - |
146 | 114 | 开发者通过以下选项开启调试信息 |
147 | | - |
148 | 115 |  |
149 | | - |
150 | 116 | ## 5. 如何切换至 RT-Thread Smart 工作模式 |
151 | | - |
152 | 117 | - 输入下列命令,进入`menuconfig`进一步配置 |
153 | 118 | ```shell |
154 | 119 | scons --menuconfig |
155 | 120 | ``` |
156 | 121 | - 在RT-Thread Kernel菜单中勾选以下选项 |
157 | | - |
158 | 122 |  |
159 | 123 | ## 6. 启动镜像程序 |
160 | | - |
161 | 124 | 1. 完成配置后,使用以下指令进行clean和重新编译 |
162 | 125 | ```shell |
163 | 126 | scons -c |
|
0 commit comments