gpt4 book ai didi

C共享库问题

转载 作者:行者123 更新时间:2023-12-01 12:22:30 24 4
gpt4 key购买 nike

我正在尝试创建一个名为 -lrfc7539 的共享库结构如下:

rfc7539.o: rfc7539.c chacha20poly1305.o
$(CC) $(CFLAGS) -c -o $@ $<

chacha20poly1305.o: chacha20poly1305.c chacha20.o poly1305.o
$(CC) $(CFLAGS) -c -o $@ $<

chacha20.o: chacha_merged.c
$(CC) -fPIC $(CFLAGS) -c -o $@ $<

poly1305.o: poly1305-donna.c
$(CC) -fPIC $(CFLAGS) -DPOLY1305_16BIT -c -o $@ $<

rfc7539_test: rfc7539.o chacha20poly1305.o poly1305.o chacha20.o

.PHONY: clean

clean:
@rm -f *.o
@rm -f rfc7539_test

然后我执行此命令 gcc -shared -o lrfc7539.so *.o 来创建 .so 文件是否有更好的做法让我的 makefile 能够自动执行此操作?

最佳答案

您需要在您的 makefile 中创建一个目标来运行您提供的 gcc 命令。如果此库是主要输出,则创建一个指向 in 的 all 目标。

all: lrfc7539.so

lrfc7539.so: rfc7539.o chacha20poly1305.o chacha20.o poly1305.o
gcc -shared -o $@ *.o

关于C共享库问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42859405/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com