树莓派到的第一天,想搭一个GPIO的编程环境然后随便点个灯,接着IIC到MPU9250上读一读欧拉角什么的看看,然而我配置Clion的速度很快,接着就遇到了wiringPi的各种问题,折腾了我接近2,3个小时。接下来就说说我的采坑记录。

首先是Clion的配置,这段非常简单,网上也可以搜索到一大堆教程,我这里就简略介绍一下我的配置流程。

先介绍一下我的树莓派环境,我选择的是full镜像,尽管是full镜像,系统上依然是没有cmake的,在配置Clion之前还是得手动安装一下cmake。

增加一个ToolChain,选择Remote Host,然后增加树莓派。自动检测可能会检测不到gcc,g++,make.... 请善用whereis命令,大部分情况下应该是在/usr/bin下

中间那个√没勾上也没事,大概是能用的

接下来是Cmake设置,其实可以把本地的Cmake给删掉。在这里确认之后,Clion就会开始同步远程和本地文件,同时生成一份部署设置,所以可以不自己设置部署,但是最好要进去检查一下部署设置

这里一定记得要把Root path改成/,我被这个问题折腾了2小时,如果是默认检测到的/home/pi,Clion是读不到很多库文件的。

之后就可以开始写代码了,可以加入一个wiringPi.h的库,顺便来一份wiringPiSetup();进行测试,大概是不会过的。在命令行下编译带wiringPi.h的文件,需要加上-lwiringPi,所以在CMakeLists.txt里加入两行,这样就可以编译了。

    find_library(wiringPi_LIB wiringPi)
    target_link_libraries(你的project名称 ${wiringPi_LIB})

选择Clion的原因还是因为我懒,喜欢Clion的补全和配置简单(?) 但是我也发现树莓派这个编译速度实在是不敢恭维,运行一小段代码大概得要15秒编译时间,所以之后可能会考虑搞一下交叉编译,毕竟这才只是随便一个亮灯程序啊....


今天你摸鱼了吗?