在进行git submodule update --init --recursive这一步时,很难git clone成功,会出现,
fatal: 无法访问 'https://ghproxy.com/https://github.com/PX4/NuttX.git/':Failed to connect to ghproxy.com port 443: 拒绝连接
![](https://i-blog.csdnimg.cn/blog_migrate/b05b67782520872fb31324c38b7bf96a.png)
,这样的错误,网上尝试了很多方法,最终我把github导入gitee仓库成功将所有文件clone了下来。
首先输入gedit .gitmodules打开.gitmodules文件。
gedit .gitmodules
![](https://i-blog.csdnimg.cn/blog_migrate/50e6325165806863ec480fe4eefd3ef2.png)
将里面的无法clone成功的url保存下来。
![](https://i-blog.csdnimg.cn/blog_migrate/437e8edf09a3fa8aa42a9223813bb38a.png)
在gitee用户头像旁边的+号里选择从GitHub/GitLab里导入仓库。
![](https://i-blog.csdnimg.cn/blog_migrate/edcbac4c962e77035e29416292ac7747.png)
创建好仓库之后将.gitmodules文件里对应的url改成对应仓库的url并保存。
执行git submodule sync命令。
git submodule sync
重新执行git submodule update --init --recursive命令。
git submodule update --init --recursive
克隆成功。
还有一种更简单的方法
![](https://i-blog.csdnimg.cn/blog_migrate/03d376e58bc2bc276956b671054814be.png)
复制进虚拟机然后解压缩即可 : (
解压之后进行make时可能出现以下情况
![](https://i-blog.csdnimg.cn/blog_migrate/a63622c9800f4894faf527e96214ff67.png)
即现在的CMakeCache.txt 文件路径和编译文件记录的CMakeCache.txt 路径不一样。
进入PX4_Firmware将build文件直接删掉即可。
![](https://i-blog.csdnimg.cn/blog_migrate/d694e9e5ee6afe28f2126e826d901552.png)
再进行make发现已经开始正常编译了。
![](https://i-blog.csdnimg.cn/blog_migrate/f6cd512a829fb35cf52e993a8d77c7b6.png)