作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
到目前为止,我有以下生成文件...
# Beginning of Makefile
OBJS = obj/shutil.o obj/parser.o obj/sshell.o
HEADER_FILES = include/shell.h include/parser.h
STATLIB = lib/libparser.a lib/libshell.a
EXECUTABLE = sshell
CFLAGS = -Wall
CC = gcc
# End of configuration options
#What needs to be built to make all files and dependencies
all: $(EXECUTABLE) $(STATLIB)
#Create the main executable
$(EXECUTABLE): $(OBJS)
$(CC) -o $(EXECUTABLE) $(OBJS)
$(STATLIB): $(
#Recursively build object files
obj/%.o: src/%.c
$(CC) $(CFLAGS) -I./include -c -o $@ $<
#Define dependencies for objects based on header files
#We are overly conservative here, parser.o should depend on parser.h only
$(OBJS) : $(HEADER_FILES)
clean:
-rm -f $(EXECUTABLE) obj/*.o
-rm -f lib/*.a
run: $(EXECUTABLE)
./$(EXECUTABLE)
tarball:
-rm -f $(EXECUTABLE) *.o
(cd .. ; tar czf Your_Name_a1.tar.z shell )
# End of Makefile
最佳答案
您可以使用 ar
创建静态库命令:
lib/libparser.a: $(OBJECT_FILES_FOR_LIBPARSER)
ar rcs $@ $^
lib/libshell.a: $(OBJECT_FILES_FOR_LIBSHELL)
ar rcs $@ $^
ar
命令不理解
s
选项,你必须运行
ranlib
在
.a
文件由
ar
生成以及。在这种情况下,请替换
ar rcs $@ $^
与
ar rc $@ $^ && ranlib $@
.
关于unix - 如何在makefile中制作静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15195087/
我是一名优秀的程序员,十分优秀!