寻找一个Makefile来在Linux中创建共享库 [英] Looking for a Makefile to create shared lib in Linux

查看:210
本文介绍了寻找一个Makefile来在Linux中创建共享库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Linux中寻找简单的Makefile来创建共享库(.so)(我有两个C文件file1.c和file2.c,还有两个静态库slib1.a和slib2.a),我可以得到Makefile来编译所有这些都是最终的。所以共享lib?。


我写这篇文章是为了在Linux中使用GNU编译器进行编译,这是行不通的,提前谢谢。


CC = gcc

AR = ar rc

CFLAGS = -Wall -g -O2 -I。 -Iinclude -I ../ common / include -fPIC

OBJECTS = file1.o file2.o

SHARED_LIB = final.so

LIBS = -lslib1 -lslib2 -lpthread


$(SHARED_LIB):$(OBJECTS)

$(CC)$(SHARED_LIB)$(OBJECTS)$( LIBS)


%。o:%。c

$(CC)$(CFLAGS)-c $<


clean:

$(RM)$(OBJECTS)

$(RM)$(SHARED_LIB)

Looking for simple Makefile to make shared lib (.so) in Linux (I have two C files file1.c and file2.c, also two static libs slib1.a and slib2.a), can I get Makefile to compile all of them to crate final.so shared lib?.


I wrote this to compile using GNU compiler in Linux, this is not working, thanks in advance.

CC = gcc
AR = ar rc
CFLAGS = -Wall -g -O2 -I. -Iinclude -I../common/include -fPIC
OBJECTS = file1.o file2.o
SHARED_LIB = final.so
LIBS = -lslib1 -lslib2 -lpthread

$(SHARED_LIB): $(OBJECTS)
$(CC) $(SHARED_LIB) $(OBJECTS) $(LIBS)

%.o : %.c
$(CC) $(CFLAGS) -c $<

clean:
$(RM) $(OBJECTS)
$(RM) $(SHARED_LIB)

推荐答案

(SHARED_LIB):
(SHARED_LIB):


(OBJECTS)
(OBJECTS)


(CC)


这篇关于寻找一个Makefile来在Linux中创建共享库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆