最近因为学习需要用到STM32的DSP库,但添加后一直编译报错,然后就转去使用KEIL,虽然KEIL成功编译了,但它的编译速度实在是太慢,只好又转回来研究如何配置CLION,在浏览了很多网上方案后,经过摸索总结,终于成功编译了,特在此记录分享一下,希望能对遇到同样问题的朋友提供帮助。
主要是CMakeList文件的设置。
在CMakeList中,有以下几行代码:
#Uncomment for hardware floating point #add_compile_definitions(ARM_MATH_CM4;ARM_MATH_MATRIX_CHECK;ARM_MATH_ROUNDING) #add_compile_options(-mfloat-abi=hard -mfpu=fpv4-sp-d16) #add_link_options(-mfloat-abi=hard -mfpu=fpv4-sp-d16) #Uncomment for software floating point #add_compile_options(-mfloat-abi=soft)
第一段是使用硬件浮点的相关文件,第二段是使用软件浮点。
当我们使用M3内核时,就需要使用软件浮点,所以此时需要去掉第一段第二行和第二段第二行的注释,同时还需要将(ARM_MATH_CM4)改为(ARM_MATH_CM3)。其中第一个指明了使用什么内核,第二个则是使能软件浮点。进行这两步操作后,在去CMakeList_template中进行同样操作,这样重新加载工程后CMakeList文件也不会改变。进行完这几步后即可成功编译。
当我们使用M4内核时,则需要将第一段的二三四行代码全部放开注释即可。