我刚刚发现了FLTK,我为我的测试制作了一个makefile。这是我的makefile:
################ template makefile ##############
# We don't know what compiler to use to build fltk on this machine - but fltk-config does...
CC = $(shell fltk-config --cc)
CXX = $(shell fltk-config --cxx)
# Set the flags for compiler: fltk-config knows the basic settings, then we can add our own...
CFLAGS = $(shell fltk-config --cflags)
CXXFLAGS = $(shell fltk-config --cxxflags) -I/System/Library/Frameworks/OpenGL.framework/Versions/A/
# We don't know what libraries to link with: fltk-config does...
LINKFLTK = $(shell fltk-config --ldstaticflags)
LINKFLTK_GL = $(shell fltk-config --use-gl --ldstaticflags) -lGLU
LINKFLTK_IMG = $(shell fltk-config --use-images --ldstaticflags)
# Possible steps to run after linking...
STRIP = strip
POSTBUILD = fltk-config --post # Required on OSX, does nothing on other platforms, so safe to call
TARGET = CompletedFile
# Define what your target application is called
all: $(TARGET)
# Define how to build the various object files... -snip-
# Now define how to link the final app - let's assume it needs image and OpenGL support
$(TARGET): MyWindow.o main.o
$(CXX) -o $@ MyWindow.o main.o $(LINKFLTK_IMG) $(LINKFLTK_GL)
$(STRIP) $@
$(POSTBUILD) $@ # only required on OSX, but call it anyway for portability
############### end #################
(继承人目标文件代码:)
以下是它给我的错误:main.o: main.cpp MyWindow.h main.h $(CXX) -c $< \ $(CXXFLAGS)
MyWindow.o: MyWindow.cpp MyWindow.h $(CXX) -c $< \ $(CXXFLAGS)
In file included from MyWindow.cpp:10: MyWindow.h:14:20: error: GL/glu.h: No such file or directory MyWindow.cpp: In member function ‘virtual void MyWindow::draw()’: MyWindow.cpp:49: error: ‘gluPerspective’ was not declared in this scope make: * [MyWindow.o] Error 1(代码无关紧要)
答案 0 :(得分:0)
编译器找不到您的GLU.h
标头。调整#include
或-I
switch以指向正确的位置。
答案 1 :(得分:0)
根据您使用的fltk版本,它有一些自己的openGL标头。我将以下行添加到我的include库中: -lfltk -lfltk_gl -lGL -lGLU
矫枉过正,但它完成了工作。