AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server

目录

  • 一、概述
  • 二、安装SDK
    • 2.1 网盘SDK - 权限不够
    • 2.2 bj41 - 需要交叉source
    • 2.3 mullen - relocate_sdk.py路径有误
  • 三、编译SDK
    • 3.1 /bin/sh: 1: gcc: not found
    • 3.2 curses.h: No such file or directory
  • 四、CMakeLists - 编译app
    • 4.1 cmake - 项目构建
    • 4.2 make - 项目编译
    • 4.3 遇到的问题
      • 4.3.1 BJ41 - 创建软链接
      • 4.3.2 CMake was unable to find a build program
      • 3.3.3 string.h: No such file or directory
  • 五、Scons - 编译Server
    • 5.1 bj41

一、概述

二、安装SDK

2.1 网盘SDK - 权限不够

从移远给的网盘里下载了AG35的SDK。根据开发手册,使用source ql-ol-crosstool/ql-ol-crosstool-env-init来安装SDK,结果提示错误:
AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第1张图片
使用sudo,又提示找不到命令:
在这里插入图片描述
以root用户登录,执行完再退出
AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第2张图片
参考链接:sudo:source:找不到命令。

2.2 bj41 - 需要交叉source

从gitlab上获取了项目的SDK,source失败:
AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第3张图片
第二次source成功,是因为我在SDK内source了一下:AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第4张图片
有时候我在SDK内source失败,在app内source一下,就可以了。为什么交叉source一下,就正常了,原因暂不知道。

2.3 mullen - relocate_sdk.py路径有误

其他人上传的SDK,我从gitlab上拉取后,安装失败:
AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第5张图片
经过查找,是因为SDK内ql-ol-crosstool目录下的relocate_sdk.py内容有误:
AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第6张图片
手动修改为自己的路径,再次source就是ok的了。
但是我自己在本地测试,修改这个路径,比如去掉guanyuan中间的u:
在这里插入图片描述
结果source也是ok的。source完,查看被修改为正确的包含guanyuan的路径。
为什么gitlab拉取的sdk,要自己修改路径,这个原因暂不知道。

三、编译SDK

3.1 /bin/sh: 1: gcc: not found

AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第7张图片
gcc -v测试发现没有安装,使用 sudo apt install gcc 进行安装即可。

3.2 curses.h: No such file or directory

AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第8张图片
使用sudo apt-get install libncurses5-dev进行安装即可。
更多参考:ncurses库的介绍与安装。

四、CMakeLists - 编译app

关于CMakeLists的使用,可以先通过这两个链接,有个基本了解:

  1. CMake 简易入门教程
    熟悉Cmake的语法,编译单个main.c打印 hello word
    将 hello.c 编译为动态库和静态库,在main.c中调用库打印
    推荐了文档和视频两个资料
  2. CMakeLists.txt的超傻瓜手把手教程

4.1 cmake - 项目构建

首先切换到 build 文件夹,命令:cd build​
执行构建命令:cmake …​

cd build
cmake ..

AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第9张图片

4.2 make - 项目编译

执行编译命令:cmake --build .​
AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第10张图片

4.3 遇到的问题

4.3.1 BJ41 - 创建软链接

AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第11张图片

4.3.2 CMake was unable to find a build program

AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第12张图片
出现这个错误的原因是,ubuntu没有安装make(参考)。安装后即可正常

3.3.3 string.h: No such file or directory

在这里插入图片描述

五、Scons - 编译Server

未详细阅读,不区分顺序

添加链接描述
添加链接描述
添加链接描述

5.1 bj41

AG35学习笔记(二):安装编译SDK、CMakeLists编译app、Scons编译server_第13张图片
多出一个out文件夹

你可能感兴趣的:(AG35)