Makefile不会被创建

时间:2017-04-07 04:18:36

标签: c++ xcode macos makefile

我是C ++的新手,我正在努力做到以下几点。我正在使用mac,安装了Xcode并尝试创建一个makefile。我目前在我的文件夹中有以下文件:

的main.cpp

Foo.cpp中

Foo.hpp

我进入文件夹并尝试命令make。它给了我以下内容:

  

make:***未指定目标且未找到makefile。停止。

我也试过" make main"这给了:

  

ld:找不到架构x86_64的符号   clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)   make:*** [main]错误1

还有其他一些东西。我是makefile的新手,我不知道如何创建它。但是,当我将文件发送给拥有Ubuntu的朋友时,他只是输入make并立即编译,我不明白为什么我没有。

对所有响应和解释确切地说明一个程序如何创建一个makefile。它应该是自动生成的,不是吗?或者我自己写了吗?

我尝试创建一个makefile,然后按照一个例子,但是它引发了一个关于缩进的错误。

谢谢!

2 个答案:

答案 0 :(得分:1)

您不能通过运行make来创建生成文件,就像您不这样做 通过运行C ++编译器来创建Foo.cpp。您创建一个makefile 通过在编辑器中编写,只需创建Foo.cpp

即可

所以要创建一个makefile,你需要学习如何编写一个makefile make的语言,就像你一样,完成你想要的东西 需要学习C ++来编写Foo.cpp

编写完makefile之后,可以运行make来处理它 makefile并执行您在makefile中编码的任务。 这些通常是自动构建一些任务的任务 你以这样的方式编写的软件(重新)构建它可以 在最短的时间内完成最少的工作。

make的不同版本大致相似但又有很大差异 语言。找出您正在使用的make版本($ make -v)和 然后研究它的文档和在线教程。 make的语言是 比C ++简单得多,但仍然足够复杂 无法通过猜测来学习它。

最广泛使用的版本是GNU Make。这是an introductory tutorial。 对于权威文档,这里是the manual

答案 1 :(得分:0)

adding to what mike said..

Makefile完全独立于Xcode(Swift),这意味着要么你不能创建一个/使用它,除非你深入了解xcode构建系统,lldb编译器和目标......(到目前为止)从Xcode.app编译)

download this makefile on my github if you want to build c++ on mac

我用它来启动新的c ++项目,使用我可以控制的makefile。用它来构建你自己的...它是我们讨论的一个简单的准系统示例(对于macOS)