c - 如何在 Linux 上为 gcc 制作一个简单的 makefile
问题描述
我有两个文件:mycode.c
和mycode.h
gcc -o mycode mycode.c pkg-config --cflags --libs libstrophe
-lpthread 我需要在 Linux 上使用 gcc compile 和推荐行编译它gcc -o mycode mycode.c pkg-config --cflags --libs libstrophe -lpthread
解决方案
Makefile 语法由几个模式组成
{thing}{colon} {dependencies ...}
<tab>{command}
需要注意的一些事项:
- 确保您的命令生成您的 {thing}
- 确保所有命令都以TAB
- 确保所有依赖项都是磁盘上的文件,尽量使它们保持最新和完整
- 每个命令都在自己的 shell 中运行
- 一个空行打破了模式
还有更多,但这会让你开始
这是您请求的 Makefile
mycode.o: mycode.c mycode.h
<tab>gcc `pkg-config --cflags libstrophe` -c mycode.c
mycode: mycode.o
<tab>gcc -o mycode `pkg-config --cflags --libs libstrophe` -lpthread mycode.o
请注意,您不要按<tab>
字面输入,而是用制表符替换它。
推荐阅读
- node.js - 当我控制台 req.body 它时,给我所有具有值的属性,但是当我获得单个属性值时,给我错误未定义
- javascript - TYPO3 在同一个容器中打开 actionlink
- javascript - 通过 ng-repeat 循环嵌套数组并创建表行
- sql - 使用 SQL 创建查询哪个网格位置在商店中产生最多收入
- python - 如何在 python 中绘制的图形中获得白色边框?
- c# - 我正在寻找一种惰性的、线程安全的实现来缓存昂贵计算的第一个非空结果
- html - 将 CSS 应用于页面上的特殊字符
- java - Settings.Secure.INSTALL_NON_MARKET_APPS 现在已弃用我可以使用什么?
- php - 如何从其他 PHP 服务器获得对 Rails 服务器的响应
- javascript - TouchableOpacity onPress 在 react-native-map 中的 CallOut 内不起作用