确保你的系统中GCC的版本不低于4.4,Ubuntu16.04自带的gcc版本为5.4.0所以符合要求。
官方推荐安装QtCreator,而QtCreator是基于Qt的(Qt是跨平台C++图形用户界面应用程序开发框架,QtCreator是基于Qt的IDE),所以要先安装Qt。而实际上,Qt安装包是自带QtCreator的,因此无需单独下载安装QtCreator。
(1)安装基础依赖
sudo apt-get install build-essential libgl1-mesa-dev
(2)安装Qt5
所有Qt历史版本(包含各平台)官方下载地址:http://download.qt.io/archive/qt/
这里选择5.12最新版本,下载之后使用 sudo ./qt-opensource-linux-x64-5.12.0.run 命令进行安装。安装过程中要求输入qt官网个人账号密码的步骤可以跳过,点击skip即可
后面根据提示即可完成安装。注意,如果要开发界面程序,一定要安装Qt组件(即Desktop gcc 64-bit组件),而不要只安装Qt Creator。新手可以全选所有组件,这样一定不会错。
qiBuild是一个被设计用来使用CMake生成跨平台项目的工具,支持交叉编译。CMake能够为任何操作系统生成makefile和工作空间,使项目能够简单的在各种操作系统上完成编译。
(1)安装qiBuild之前,需确保系统中已安装CMake以及python,且CMake版本不低于2.8.3,python必须为2.7版本(python版本的确认可参考前一篇博客:https://mp.csdn.net/postedit/85267476)。可以使用 cmake --version 命令查看系统当前的CMake版本。Ubuntu16.04自带的CMake版本为3.5.1,因此符合要求。
(2)安装qiBuild
使用以下命令进行安装
pip install qibuild --user
安装完成后为其添加环境变量
export PATH=$PATH:$HOME/.local/bin
(3)配置qiBuild
打开一个新的终端,运行
qibuild config --wizard
根据系统提示,选择CMake generator,建议选默认的 “Unix Makefiles” 。然后选择IDE,建议选择QtCreator 。
此时,系统可能会提示找不到qtcreator,要求输入qtcreator可执行程序的安装路径。
我这里默认安装的路径为:/opt/Qt5.12.0/Tools/QtCreator/bin
输入路径后即可完成配置。
(1)下载NAOqi SDK,可以从官方开源社区下载
根据自己电脑的操作系统选择下载32位或64位的C++ SDK,这里选择 C++SDK 2.1.2 Linux 64,下载后解压。
(2)利用qibuild工具创建一个worktree
创建一个空文件夹,比如取名为 qibuild_worktree,然后在该文件夹下打开一个新的终端,并运行以下命令初始化为一个工作空间,即worktree
qibuild init
然后将解压后的NAOqi SDK复制到该文件夹中。
(3)测试
通过命令行进入NAOqi SDK目录中,运行 ./naoqi
如图显示NAOqi is ready。
(1)进入NAOqi SDK文件夹的 doc/dev/cpp/examples 子文件夹
通过命令行,输入:cd /"path to SDKfolder"/doc/dev/cpp/examples,其中的path to SDKfolder是指NAOqi SDK所在路径。我的是:
cd /home/robot/qibuild_worktree/naoqi-sdk-2.1.2.17-linux64/doc/dev/cpp/examples
(2)输入以下命令,使用C++SDK提供的feed(feed是一个简单的XML文件,描述工具链的位置和其中的包),创建一个交叉编译工具链
qitoolchain create toolchain-name /"path to SDKfolder"/toolchain.xml ,其中,toolchain-name是自己自定义的名称。我的是:
qitoolchain create mytoolchain /home/robot/qibuild_worktree/naoqi-sdk-2.1.2.17-linux64/toolchain.xml
(3)输入以下命令创建一个与工具链关联的生成配置,并设置为默认配置
qibuild add-config mytoolchain -t mytoolchain --default
配置完成后,可以使用 qitoolchain info 命令显示已创建的自定义toolchain的详细信息,要确保其中配置的路径信息与文件实际的路径相同。否则后面构建项目的时候会出现错误:
By not providing "FindALCOMMON.cmake" in CMAKE_MOUDLE_PATH this project has asked CMake to find a package configuration file provided by "ALCOMMON",but CMake did not find one.
Could not find a package configuration file provided by "ALCOMMON" with any of the following names:
ALCOMMONConfig.cmake alcommon-config.cmake
(4)输入下列命令来配置并构建 sayhelloworld(SDK中自带的例程) 项目
cd core/sayhelloworld
qibuild configure
qibuild make
(5)运行编译生成的可执行文件
可执行文件路径为:sayhelloworld/build-mytoolchain/sdk/bin,进入该目录,输入./sayhelloworld 即可运行。