c - 一个项目中的多个文件 - C

标签 c xcode linker-errors

由于我刚刚学习 C,我希望能够在 XCode 中创建一个“Projects”文件夹来保存我为学习不同内容而创建的所有迷你文件。例如 HelloWorld.c IfElse.c WhleLoop.c 但是我遇到了一个主要问题。我无法运行这些不同的 main 文件而不出现以下错误...

duplicate symbol _main error: 
linker command failed with exit code 1 (use -v to see invocation)

最简单的方法是什么?我只想在 Xcode 中打开一个项目,以便能够非常轻松地引用我以前的文件,并在我真正进入 C 之前创建一些小测试文件来完成不同的学习任务。

有人可以提出解决方法吗?

-亨利

最佳答案

最好是写Makefile

打开一个名为“Makefile”的新文件

在该文件类型中,如下所示:

all:hello ifelse while

hello:HelloWorld.o
<tab>cc -o hello  HelloWorld.o

ifelse:IfElse.o
<tab>cc -o ifelse IfElse.o

WhileLoop.o:WhileLoop.o
<tab>cc -o while WhileLoop.o

上面给出的是一个 makefile,用于在 Linux 中的单个项目下创建多个可执行文件。它也可以在 Eclipse 等标准 SDK 中使用。对于任何要编译的新文件,将其添加到 makefile 中,如其他文件所示。

编写完 makefile 后,在终端中输入 make 命令。

一切都会被编译并创建不同的可执行文件。

要了解有关 makefile 的更多信息,您可以引用以下链接:

http://www.cs.wmich.edu/~sdflemin/instr_pgs/make/index.html

关于c - 一个项目中的多个文件 - C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17311732/

相关文章:

c - 双指针循环中的段错误

c - append 两个没有 str 函数的字符串

swift - 最新版本的照片库是否已弃用 fetchAssetCollections 方法?

c++ - 与静态库链接时 undefined reference ,但与 src 编译时链接成功

c++ - C++中的奇怪链接器错误

c++ - 按字符读取字符串直到行尾 C/​​C++

c - 找出连续乘以 3 个整数所得的第一个大于 M 的数

xcode - PackageMaker 什么都不安装

swift - 如何在 webview 中打开重定向页面?

linux 交叉编译链接器问题, undefined reference `g_thread_init' 和 `org_freedesktop_DBus_request_name'