开发环境
先交代笔者环境
- Clion 2020.2.4
- arm-nobi-gcc
- MinGW
笔者使用这份环境开发Stm32
,时至今日遇此问题
问题表征
CMake过程正常,之后
make
的时候arm-gcc
提示找不到我自己额外加入的文件:No such filr or directort
,并且无论我这个文件放哪都是这个问题
期间尝试过使用绝对路径标明新加入的文件路径,但是又提示找不到新加入文件所包含的头文件路径,但是单独编译原生工程没有任何问题
问题解决
百思无果的情况下,笔者尝试换一个cmake
语法
之前的新加入文件是在CMakeLists.txt
文件中的
set(LINKER_SCRIPT ${CMAKE_SOURCE_DIR}/STM32F103RFTx_FLASH.ld)
后面追加,笔者刚开始尝试使用aux_source_directory
追加此文件,发现居然不报错了
笔者不死心,又把这个文件用老样子添加回去,报错
但是,如果是使用set()
命令单独新建一个环境变量,如
set(USER_DEFINE_DRIVE Drivers/ExternalDevice/Motor/DriveMotor_BASE.h Drivers/ExternalDevice/Motor/DriveMotor_BASE.c)
并且注意在
add_executable(${PROJECT_NAME}.elf ${SOURCES} ${LINKER_SCRIPT} ${USER_DEFINE_DRIVE})
将新建立的环境变量添加进去,这个报错的问题就没了
结语
虽说这个问题解决了,但是笔者到目前为止并不知道此问题为何会出现为何会被以这样的方式解决
姑且将此问题归结为cmake
或者说是Clion
的问题