我需要在运行 Angstrom 的 BeagleBoard 上使用 OpenCV 运行 C++ 程序。我知道如何用 IDE 来做这件事(程序本身已经准备好了),但我不知道如何在没有 IDE 的情况下编译它。我意识到我需要制作一个 Makefile,但我对 Make 不太熟悉。
有人可以给我一些指点吗?
答案1
这里是关于使用 OpenCV 和 CMake 的教程。它将为您生成 makefile。另一方面,正如 Billy L 所说,您应该寻找一个 make 教程,因为如果没有这种知识,您作为程序员会有些无能为力……
答案2
最简单的形式是,makefile 只是一串命令,用标签分隔。按照惯例,标签all
通常用作一种默认设置。
makefile 包括:
label1: [dep1 ... depN]
<tab> command1
<tab> command2
label2: [dep1 ... depN]
<tab> command1
<tab> command2
...
初学者通常会犯的一个错误是使用空格缩进,但 make 希望使用单个制表符来缩进命令。
对于简单的情况,您可以忽略依赖关系。
因此,最简单的 makefile 将是这样的:
all:
<tab> cc -o hello -Wall hello.c
make
在存在类似上述文件的目录中调用Makefile
将导致cc -o hello -Wall hello.c
被调用。如果您的 make 非常挑剔,您可能需要明确说明make all
,但这不是必要的。
makefile 有上百万种可能,但上面的内容应该可以让你入门。严格来说,上面的例子适用于 GNU make,但 makefile 如此普遍,我没见过其他实现对基本用例的处理方式有太大不同。