CMake入门学习+实战<三> 静态库与动态库构建
2017-06-26 23:06
288 查看
文章整合自:
CMake Practice
http://sewm.pku.edu.cn/src/paradise/reference/CMake%20Practice.pdf
CMake 官方文档
https://cmake.org/cmake/help/latest/
以及其他网络资料
目标:
代码移植
静动态库编译调用
文章为CMake Practice的笔记以及一些错误整改或者补充。请参照源文章学习,官方文章以供深入学习。
思维导图为cmake practice目录,阅读时间建议为半天
<三>cmake hello 静态库与动态库构建
文章中出现的错误
Cannot determine link language for target "hello_static".
在编译静态库时提示错误如上;
Google半天没有像样的解决方案,调了两个小时发现发现问题如下:
源代码头文件调用库
#include <stdio.h>
解决方案:
更改主目录下CMakeLists.txt
SET(LIBHELLO_SRC hello.cpp)
同时,将hello.c改成——hello.cpp
编译不报错
(或者)更改库文件
#include <stdio.h>改为——#include <cstdio>
推荐第一种方法解决。
错误2:库文件的安装路径错误
实际安装路径中包含local,下一节调用静态库时注意
CMake Practice
http://sewm.pku.edu.cn/src/paradise/reference/CMake%20Practice.pdf
CMake 官方文档
https://cmake.org/cmake/help/latest/
以及其他网络资料
目标:
代码移植
静动态库编译调用
文章为CMake Practice的笔记以及一些错误整改或者补充。请参照源文章学习,官方文章以供深入学习。
思维导图为cmake practice目录,阅读时间建议为半天
<三>cmake hello 静态库与动态库构建
文章中出现的错误
Cannot determine link language for target "hello_static".
在编译静态库时提示错误如上;
Google半天没有像样的解决方案,调了两个小时发现发现问题如下:
源代码头文件调用库
#include <stdio.h>
解决方案:
更改主目录下CMakeLists.txt
SET(LIBHELLO_SRC hello.cpp)
同时,将hello.c改成——hello.cpp
编译不报错
(或者)更改库文件
#include <stdio.h>改为——#include <cstdio>
推荐第一种方法解决。
错误2:库文件的安装路径错误
实际安装路径中包含local,下一节调用静态库时注意
相关文章推荐
- CMake入门学习+实战<四> 使用外部共享库和头文件+实战:使用CLion调用zlib静态库实现pdf flatedecode解码
- CMake入门学习+实战<二> helloworld完善
- cmake学习(一)静态库与动态库构建
- cmake学习(一)静态库与动态库构建
- dubbo学习之Consumer入门<三>
- cmake学习(一)静态库与动态库构建
- java 从零开始,学习笔记之基础入门<数据类型的转换>(五)
- java 从零开始,学习笔记之基础入门<数组列表(ArrayList)>(九)
- java 从零开始,学习笔记之基础入门<数组>(七)
- java 从零开始,学习笔记之基础入门<对象_属性>(二)
- java 从零开始,学习笔记之基础入门<运算符表达式和流程控制>(六)
- java 从零开始,学习笔记之基础入门<重载_覆盖_继承>(十)
- IOS cocos2d学习笔记-<三>AnchorPoint锚点和CCLabelBMFont
- Delphi-IOCP学习笔记<三>====工作线程和Listener
- SQL 学习笔记<三> SELECT之连接查询
- 设计模式入门--设计模式学习笔记<一>
- PostgreSQL学习手册(函数和操作符<三>)
- Android NDK学习 <六> 复杂结构动态库处理和第三方库的移植
- (转)MFC学习技巧<三>
- java 从零开始,学习笔记之基础入门<封装类>(十一)