mys*_*elf 5 c gcc makefile file
我的问题与我有关makefile:
gcc -c src/uno.c src/uno.h -o src/uno.o
gcc: fatal error: cannot specify -o with -c, -S or -E with multiple files
Run Code Online (Sandbox Code Playgroud)
如何创建.o包含多个文件的文件?
头文件(src/uno.h在本例中)是从文件中引用的,不应在命令行上再次命名:
gcc -c src/uno.c -o src/uno.o
Run Code Online (Sandbox Code Playgroud)
您可能必须使用-I标志命名目录以查找它们.但是如果你#include "uno.h"在你的资源中,那么gcc已经找到了该文件,因为它在同样包含的目录中搜索它uno.c.
您可以编译多个fils并将它们链接到单个二进制文件中,例如
gcc -o myApp myAppMain.c myAppUtil.c myAppStuff.c
Run Code Online (Sandbox Code Playgroud)
但这意味着如果单个源发生更改,您将不得不重新编译所有内容,因为不保留中间对象.如果使用目标文件,则每个转换单元始终有一个编译器调用.
有一个预编译标头的功能,但在这种情况下,您只需编译标头,而不是uno.c文件.无论如何,这是非常先进的,所以你可能不需要它.
| 归档时间: |
|
| 查看次数: |
3950 次 |
| 最近记录: |