我希望将此语句转换为makefile:
gcc -Wall -I/usr/local/include -c my_program.c
我写了这个makefile:
CC=gcc
CFLAGS=-c -Wall -I:/usr/local/include
LDFLAGS= -LE:/usr/local/include
LIBS= -lgsl
SOURCES=my_program.c
OBJECTS=$(SOURCES:.c=.o)
EXECUTABLE=my_program
all: $(SOURCES) $(EXECUTABLE)
$(EXECUTABLE): $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $@
.c.o:
$(CC) $(CFLAGS) $< -o $@
但是,我有一个指定未定义引用的错误并显示:
collect2: error: ld returned 1 exit status
make: *** [my_program] Error 1
在这个程序中,我使用的是存储在/ usr / local / include
的GNU GSL库我阅读了关于makefile和man make页面的各种教程,但我仍然卡住了。如果您有任何建议可以解决此问题,请与我们联系。谢谢!