沁恒MCU CH58x 系列 MounRiver编译配置选项

发布时间 2023-12-12 22:27:40作者: FBshark

本文大纲:

1:工程文件夹架构的理解。

2:配置编译选项:头文件包含路径(相当于 gcc 的 -大i 选项), 库文件路径(相当于gcc 的 -大l 选项)

 一、工程文件夹架构的理解

插一句题外话:MounRiver Studio 的工程的概念与Keil 的工程不同,MounRiver Studio 的工程与文件管理器中的文件夹夹架构是完全同步的(而Keil 在工程内独立设置“文件夹”(或者叫"Group(文件分组)")

工程文件夹逻辑架构可表示如下,在新建工程的时候,可以按这种方式归类文件。(也可以不修改,但要理解官方生成的工程的各种文件的归属)

 二、配置编译选项

MounRiver编译配置选项过程,与CMake 很像。基本步骤就是:

1. 搜索要编译的源文件

2. 配置头文件包含路径(相当于 gcc 的 -大i 选项),

3. 配置库文件路径(相当于gcc 的 -大l 选项)

cmake_minimum_required(VERSION 3.0)
project(CALC)

##一、源文件部分:
file(GLOB SRC_LIST ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp    # 搜索指定目录下源文件
#也可以用:
aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR}/src SRC_LIST)

##二、头文件&库文件部分
include_directories(${PROJECT_SOURCE_DIR}/include)# 包含头文件路径,相当于 gcc -I
link_directories(${PROJECT_SOURCE_DIR}/lib)# 包含静态库路径, 相当于 gcc -L
link_libraries(calc) # 链接静态库, 相当于 gcc -l

add_executable(app ${SRC_LIST})#生成可执行文件,相当于 gcc .... -o ...
#链接库也可以用 target_link_libraries()

步骤如下:

Step1:搜索要编译的源文件

前面提到,MounRiver Studio 的工程与文件管理器中的文件夹架构是完全同步的,两者息息相关。

MounRiver Studio 可以自动搜索工程文件夹下的所有 .c 文件(源文件),这个和上述 CMakeLists中的 file(GLOB SRC_LIST ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp 命令很像。

正式步骤:

进入properties中的Resource下的Linked Resources选项,将Linked Resources选项卡下的所有链接目录彻底删除:

全删除后,会自动出现一个工程名的目录,此时不要继续删除,所以删除后如右图:

至此,工程文件目录设置结束,该设置会自动搜索工程文件夹下所有的c文件,将其全部编译。准备添加其他c文件时,直接将文件复制到该工程文件夹下面的任意目录都可以。

Step2:  配置头文件包含路径

1. 右键工程,进入properties,按图指示进入头文件设置界面:

2. 根据工程中现有的头文件目录,结合自己将文件移动到哪个目录,将头文件路径一一修改为移动后的文件夹,添加其他头文件点击修改旁边的新建即可:

Step3:  配置链接文件+要链接的库文件名 +库文件包含路径

头文件修改完毕后,继续修改ld文件配置:

如果ld文件复制到了其他位置,所以需要重新选择ld文件,打开General选项卡进行选择。

选择好ld文件后,需要修改库的所在位置,在上一步设置ld的下方就有Libraries选项卡,点击进入设置页面:

这里,右上方的选项是我们工程用到的Library的名字,下方是library的所在文件夹,这里我们将只需要修改文件夹信息,将文件夹改为移动后的位置,修改后如下:

如果还需要将其他库移动到本工程,首先根据第2步将库的头文件添加到工程,然后在此页面设置库文件,先在右上方添加库的名称(不知道名称可以去移植库的工程中查看),然后在右下方设置中添加库所在文件夹的位置即可。

最后点击Apply and Close,库文件的设置就结束了,整个工程的建立也就完成了。

 

本文参考自:https://blog.csdn.net/mx1117/article/details/122209600?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170238707216800192288213%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=170238707216800192288213&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-1-122209600-null-null.142^v96^pc_search_result_base3&utm_term=MounRiver%20%E6%96%B0%E5%BB%BA%E5%B7%A5%E7%A8%8B&spm=1018.2226.3001.4187

作者:偶可不乖呢