您的位置:首页 > 运维架构

用CMakeLists.txt替代makefile创建openwrt软件包(编译自己的应用程序)

2017-02-08 16:59 681 查看
这两天学习了CMakeLists.txt的规则和写法

先给大家发几个CMakeLists.txt的学习网址和官网doc

https://cmake.org/cmake-tutorial/  【入门学习步骤】

http://blog.csdn.net/sunbaigui/article/details/6625547  
 【简单示例】

https://cmake.org/Wiki/CMake_Useful_Variables  
【常用变量名】

https://github.com/carl-wang-cn/demo/tree/master/cmake  
【大量有实用价值的demo】

ok现在开始看openwrt下的cmakelists.txt,其实完全没啥不一样的,就几行代码就可以搞定了。。。

首先helloworld的makefile相比以前的有些变化

package/helloworld/Makefile

添加一行

Shell

1include $(INCLUDE_DIR)/cmake.mk
然后在src下没有了makefile,而是CMakeLists.txt,注意文件的名的大小写,出错了就认不得了。。#vim package/helloworld/src/CMakeLists.txtShell

1

2

3

4

5

6

7

8

cmake_minimum_required(VERSION
2.6)  #要求的最低cmake版本号

PROJECT(hello_world)        #项目名称

 

SET(SOURCES
hello_world.c)  
#设置变量SOURCES所指定的C文件

ADD_EXECUTABLE(hello_world
${SOURCES})  
#设置最终生成的可执行文件名

 

INSTALL(TARGETS
hello_world
RUNTIME
DESTINATION
bin)  
#最后的install,必要的

 

把整体的源码也贴出来吧!

hello_world.zip

 

欢迎任何人在此代码的基础上修改成自己的软件包!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: