标题: RISC-V MCU开发 (四):编译配置 [打印本页]

作者: BlackFilve    时间: 2021-9-27 14:44
标题: RISC-V MCU开发 (四):编译配置
   在嵌入式开发中,当我们完成了工程创建、代码编辑等操作之后,就可以开始进行工程编译。 对于使用内置工程模板创建或外部导入的项目,MounRiver® Studio(MRS)会根据对应芯片内核自动配置好目标工具链(riscv-none-embed-gcc或arm-none-eabi-gcc),同时,目标平台、优化等级、调试等级以及文件引用等编译配置也会自动设置完毕。

【工程属性页】在资源管理器窗口选中要编译的工程,点击工具栏上的工程属性配置按钮,或者点击右键菜单中的”Properties”进入编译选项属性页面。

                              



【目标处理器】用于指定目标指令架构、扩展函数等参数。
-mcmodel=medlow:程序及其静态定义的符号必须位于单个2 GiB地址范围内,并且必须位于绝对地址-2 GiB和+2 GiB之间。程序可以静态或动态链接。这是默认的代码模型。
-mcmodel=medany:程序及其静态定义的符号可以任何单个2 GiB地址范围内。程序可以静态或动态地连接。


【优化等级】主要是配置GCC的优化选项,想要添加其他优化选项可以写在下方other optimizationflags中。
                    


【警告等级】用于设置GCC的警告参数选项。

                    

【调试等级】红框中的-g设置GDB调试信息,注意生成静态库时将红框中调为None,否则生成的库会包含调试信息,导致库文件过大。
                     


【汇编、头文件添加】红框中的位置分别为添加汇编、头文件接口,点击右侧方框上绿色的加号去添加文件路径。



【链接脚本文件添加】红框中的位置分别为添加链接脚本文件接口,点击右侧方框上绿色的加号去添加文件路径。


                    
【库文件添加】
-L添加库文件的路径,-l添加库名,注意库名要去掉前缀和后缀,例如libtest.a,只需要填写test。



【链接其他文件】Other objects 可以添加想要参与链接的.o或者.lib文件。
                    


【输出文件格式】右侧红框中可点击下拉框选择编译后输出BIN文件或者HEX文件。



【输出类型】图示位置可选择生成可执行文件或者静态库文件。

                     

以上就是MRS常用的编译配置,编译之后生成的文件会存在工程目录中obj文件中,其中.list和.map文件可用于对程序分析。






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1