yocto下的cmake版本hello world,追加分层使用
这里记载如何使用Yocto编译一个cmake的helloworld的程序
我想把这个helloworld当成一个新的模块区别与yocto版本的helloworld
1.所以先在yo目录下,建立一个cmakehelloworld文件夹.
2.使用了层,需要在conf路径下新建立一个文件叫,bblayers.conf,yocto用这个文件来管理层。
内容写上这一句就可以了:
BBLAYERS += "${TOPDIR}/cmakehelloworld"
3.回到自己的层,也就是/cmakehelloworld/这个路径里,添加自己的层的配置文件,建立conf文件夹,在里面建立一个叫layer.conf的文件:
内容为:
BBFILES += "${LAYERDIR}/recipes/*.bb"
BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "cmakehelloworld"
BBFILE_PATTERN_cmakehelloworld := "^${LAYERDIR}/"
BBFILE_PRIORITY_cmakehelloworld = 5
4.在cmakehelloworld路径下放上我们的主角helloworld,先建立个source文件夹,在里面写一个main.c
内容为
#include <stdio.h>
int main(){
printf("Hello world ,I am Cmake in yocto!\n");
return 0;
}
5.编译上面的代码,方法为在cmakehelloworld路径下建立build文件夹,在里面放上CMakeLists.txt文件
内容为:
PROJECT(hello_cm)
SET(SRC_LIST ${CMAKE_CURRENT_SOURCE_DIR}/../source/main.c)
SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../image)
ADD_EXECUTABLE(hello_cm ${SRC_LIST})
6.把编译步骤写进bb里,方法为在cmakehelloworld下建立recipes文件夹,在里面放上hello_cmake.bb文件
内容为:
inherit cmake
DESCRIPTION = "Hello world in cmake"
PN = 'hello_cm'
PV = '1'
SRCREV = "${AUTOREV}"
S = "${TOPDIR}/cmakehelloworld/build"
7.由于yotco默认执行do_build task(修改默认task的方法为BB_DEFAULT_TASK = "build"这里的Build改成其他的就可以了),而base的class里的build无法实现我们的Cmake编译,所以在cmakehelloworld下建立classes,里面放上cmake.bbclass
内容为:
do_build() {
cd ${S}
cmake .
make
}
到这里就可以了,在yo路径下执行bitbake hello_cm就可以看到在image里生成的hello_cm执行程序,执行./hello_cm
Hello world ,I am Cmake in yocto!
大功告成!
yocto下的cmake版本hello world,追加分层使用相关推荐
- Linux下 gcc/g++ 版本切换与CMake各版本安装
一. gcc/g++ 版本切换 首先下载需要的版本(以gcc8为例) sudo apt-get install gcc-8 删除原有的gcc链接, 改为新链接 cd /usr/bin sudo rm ...
- 在Ubuntu18.04下的Cmake使用记录
(1)首先是安装cmake.命令如下: sudo apt-get install cmake (2)创建一个源程序,1.cpp如下:(1.cpp的位置是位于hoem/ysh/code) #includ ...
- Ubuntu下使用CMake编译OpenSSL源码操作步骤(C语言)
OpenSSL的版本为1.0.1g,在ubuntu下通过CMake仅编译c代码不包括汇编代码,脚本内容如下: build.sh内容: #! /bin/bashreal_path=$(realpath ...
- Ubuntu下通过CMake文件编译CUDA+OpenCV代码操作步骤
在 CUDA_Test 工程中,CUDA测试代码之前仅支持在Windows10 + VS2013编译,今天在Ubuntu 14.04下写了一个CMakeLists.txt文件,支持在Linux下也可 ...
- VS远程调试(Visual Studio)远程连接到linux cmake(跨平台开发)(适用于VS2019,且远程目标平台cmake版本大于等于3.8)
参考文章:使用vs2019进行Linux远程开发 vs进行远程开发分为三步: 1.创建远程环境的连接,随后让vs将远程环境中的系统头文件同步到本地(也可以指定其他地方的头文件,后面会讲解),c++的代 ...
- 在 linux 下使用 CMake 构建应用程序
CMake 简介 CMake 是一个跨平台的自动化建构系统,它使用一个名为 CMakeLists.txt 的文件来描述构建过程,可以产生标准的构建文件,如 Unix 的 Makefile 或Windo ...
- linux cmake装在自己目录下,如何在Linux下安装cmake
全部展开 OpenCV 2.2和更高版本需要使用Cmake生成生成文件,因此需要先安装cmake. 还有其他需要先安装cmake的软件 1. 在Linux环境中打开Web浏览器,输入URL:mac c ...
- Ubuntu下使用cmake结合CmakeLists.txt生成makefile文件并进行编译
转自1:https://www.cnblogs.com/cv-pr/p/6206921.html 转自2:https://blog.csdn.net/qqwangfan/article/details ...
- Windows下使用cmake vscode搭建 C/C++开发调试环境
在windows下搭建的方式,在第3章之后同样适用于Linux系统,大致步骤均相同 1. MinGW的下载与安装 MinGW提供了 C/C++编译器,可以将程序源代码编译为可以在 Windows 中运 ...
最新文章
- 【收藏】Oracle存储过程读写文件
- 重磅 | 19 页花书精髓笔记!你可能正需要这份知识清单
- 20175221曾祥杰 实验四《Android程序设计》
- python流量监控_用python中的pcapy实现网络流量监控
- 信息学奥赛一本通(1234:2011)
- ubuntu14.04 LTS版本下安装配置gem5环境
- 函数名、闭包及迭代器
- 2021-08-21 初识javabean
- Word 中文编号标题与数字编号题注
- gps l1带宽_请问GPS带宽是多少?
- 环保数采仪助力绿水青山建设
- python-matplotlib制作图表与中文正常显示
- 北京某牧场管理企业——牧场智慧管理项目
- 2021 年 8 月全国程序员薪酬出炉:北京18904元位居榜首
- 分享一下我作为技能型自由职业者的常用赚钱软件
- Hbase安装~Hbase安装过程中常见的问题
- 网络存储技术Windows server 2012 (项目二十二 远程异地灾备中心的部署)
- 罗克韦尔自动化和PTC为由PTC支持的FactoryTalk InnovationSuite™添加行业首创的增强功能,用于简化和加速数字化转型
- 空气源热泵控制系统解决方案
- MPLS基本部署实验解析(静态LSP与动态LSP)
热门文章
- 个人永久性免费-Excel催化剂功能第105波-批量调整不规范的图形对象到单一单元格内存储...
- (最详细教程)中国知网caj格式论文如何转化为word,pdf,txt
- c语言拔萝卜算法,拔萝卜优秀说课稿
- opencv05:图像的基本操作
- n行Python代码系列:五行代码实现两个视频画中画播放
- 第7章第30节:四图排版:四张图片交错对齐排列 [PowerPoint精美幻灯片实战教程]
- movidius 神经计算棒 ncsdk windows 平台 支持 配置 教程
- ZN-61A网络型PLC可编程控制器实训装置
- 实训一 古诗横竖输出
- zk的session