小编roc*_*ddy的帖子

.so和.lo文件有什么区别?

我知道.so文件是一个类似于Windows中的.dll文件的共享库文件,但是.lo文件怎么样?

linux shared-libraries

7
推荐指数
1
解决办法
8720
查看次数

Makefile 将 .o 文件移动到不同的目录

我在一个目录中有源代码,在另一个目录中有一个 makefile。我能够使用 make 系统的 vpath 机制编译代码。.o 文件正在生成文件所在的同一文件夹中创建。但我想将这些 .o 文件移动到名为obj. 我尝试了以下方法:

vpath %.o obj
Run Code Online (Sandbox Code Playgroud)

但是,它们仍然在与 makefile 相同的文件夹中创建。谁能帮我解决这个问题?

下面是 makefile 的一些突出显示的行:

PATH_TO_OBJ:- ../obj
SRC :- .c files
OBJS :- $(SRC:.c = .o)
.c.o = $(CC) $(CFLAGS) -c 
exe: cc $(LFLAGS) -o $(PATH_TO_OBJ) $(SRC).
Run Code Online (Sandbox Code Playgroud)

在此之后,.o 文件也在 Makefile 的同一文件夹中创建。没有移动到 obj

c makefile vpath

3
推荐指数
1
解决办法
3453
查看次数

如何过度定义但未使用的警告乐趣

我在一个文件中调用一个函数

a = fun(a,b);
Run Code Online (Sandbox Code Playgroud)

我在其他文件中使用该函数的#define

 #define fun fun1
Run Code Online (Sandbox Code Playgroud)

我在另一个文件中定义该函数

static int fun1(int a, int b)
{
   -------------
   -------------
 }
Run Code Online (Sandbox Code Playgroud)

但编译器投诉

'fun1'已定义但未使用[-Wunused-function]

编译器对此抱怨很奇怪.

c

0
推荐指数
1
解决办法
892
查看次数

标签 统计

c ×2

linux ×1

makefile ×1

shared-libraries ×1

vpath ×1