MakeFile: Link 一个库 - mingw
MakeFile: Link a library - mingw
我有一个 C 程序,其路径如下:
pgrmusinglib.c
pgrmusinglib.h
main.c
lib文件夹
- libmylibrary.dll
我正在尝试使用 mingw64 在 windows 上编译它。
我构建了这个 Makefile
CC = gcc
CFLAGS = -O3
DEPS = pgrmusinglib.h
LDFLAGS = -L/$(LIB) -lmylibrary
LIB = libfolder
SRC=$(wildcard *.c)
OBJ = $(SRC:.c=.o)
all: pgrm
pgrm : $(OBJ)
$(CC) -o $^ $(LDFLAGS)
%.o: %.c $(DEPS)
$(CC) -c $^ $(CFLAGS)
pgrm 规则失败并出现错误:
c:/programdata/chocolatey/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
cannot find -lmylibrary
我认为由于您编写 LDFLAGS 的方式,它无法正常工作,我假设只是一个小错字,您在目录名称前面放置了一个“/”,因此它在您的根目录中寻找 libfolder。尝试删除“/”或添加句号“.”前面
我有一个 C 程序,其路径如下:
pgrmusinglib.c
pgrmusinglib.h
main.c
lib文件夹
- libmylibrary.dll
我正在尝试使用 mingw64 在 windows 上编译它。 我构建了这个 Makefile
CC = gcc
CFLAGS = -O3
DEPS = pgrmusinglib.h
LDFLAGS = -L/$(LIB) -lmylibrary
LIB = libfolder
SRC=$(wildcard *.c)
OBJ = $(SRC:.c=.o)
all: pgrm
pgrm : $(OBJ)
$(CC) -o $^ $(LDFLAGS)
%.o: %.c $(DEPS)
$(CC) -c $^ $(CFLAGS)
pgrm 规则失败并出现错误:
c:/programdata/chocolatey/lib/mingw/tools/install/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
cannot find -lmylibrary
我认为由于您编写 LDFLAGS 的方式,它无法正常工作,我假设只是一个小错字,您在目录名称前面放置了一个“/”,因此它在您的根目录中寻找 libfolder。尝试删除“/”或添加句号“.”前面