64,637
社区成员
发帖
与我相关
我的任务
分享
CC=g++
FLAGS=-L./lib -I./include -I. -lopencv_core -lopencv_highgui -lopencv_imgproc
all: ColorTransfer
ColorTransfer: main.o ColorTransfer.o
$(CC) $(FLAGS) main.o ColorTransfer.o -o ColorTransfer
main.o: main.cpp
$(CC) $(FLAGS) -c main.cpp -o main.o
ColorTransfer.o: ColorTransfer.cpp ColorTransfer.h
$(CC) $(FLAGS) -c ColorTransfer.cpp -o ColorTransfer.o
clean :
rm -rf main.o ColorTransfer.o
g++ -L/usr/local/lib -I./include -I. -lopencv_core -lopencv_highgui -lopencv_imgproc main.o ColorTransfer.o
main.o: In function `showImg(std::string, cv::Mat, int)':
main.cpp:(.text+0x21): undefined reference to `cv::namedWindow(std::string const&, int)'
main.cpp:(.text+0x34): undefined reference to `cv::_InputArray::_InputArray(cv::Mat const&)'
main.cpp:(.text+0x75): undefined reference to `cv::imshow(std::string const&, cv::_InputArray const&)'
main.cpp:(.text+0x9d): undefined reference to `cv::waitKey(int)'
main.o: In function `main':
CC=g++
FLAGS += -I
FLAGS += -I./include
FLAGS=-L./lib/libopencv_core.so -L./lib/libopencv_highgui.so -L./lib/libopencv_imgproc.so -lopencv_core -lopencv_highgui -lopencv_imgproc
刚才少打了个L,但还是不行。。[/quote]
再好好看看!库文件和头文件引导的时候不一样的! 一个是CFLAGS 一个DFLAGS[/quote]
CC=g++
CFLAGS += -I.
CFLAGS += -I./include
DFLAGS += -L./lib/ -lopencv_core -lopencv_highgui -lopencv_imgproc
all: ColorTransfer
ColorTransfer: main.o ColorTransfer.o
$(CC) $(CFLAGS) main.o ColorTransfer.o -o ColorTransfer $(DFLAGS)
main.o: main.cpp
$(CC) $(CFLAGS) -c main.cpp -o main.o
ColorTransfer.o: ColorTransfer.cpp ColorTransfer.h
$(CC) $(CFLAGS) -c ColorTransfer.cpp -o ColorTransfer.o
clean :
rm -rf main.o ColorTransfer.o
也是对的,为什么CFLAGS和DFLAGS要分开写呢?[/quote]
引导的时候不一样吧!
CC=g++
FLAGS += -I
FLAGS += -I./include
FLAGS=-L./lib/libopencv_core.so -L./lib/libopencv_highgui.so -L./lib/libopencv_imgproc.so -lopencv_core -lopencv_highgui -lopencv_imgproc
刚才少打了个L,但还是不行。。[/quote]
再好好看看!库文件和头文件引导的时候不一样的! 一个是CFLAGS 一个DFLAGS[/quote]
CC=g++
CFLAGS += -I.
CFLAGS += -I./include
DFLAGS += -L./lib/ -lopencv_core -lopencv_highgui -lopencv_imgproc
all: ColorTransfer
ColorTransfer: main.o ColorTransfer.o
$(CC) $(CFLAGS) main.o ColorTransfer.o -o ColorTransfer $(DFLAGS)
main.o: main.cpp
$(CC) $(CFLAGS) -c main.cpp -o main.o
ColorTransfer.o: ColorTransfer.cpp ColorTransfer.h
$(CC) $(CFLAGS) -c ColorTransfer.cpp -o ColorTransfer.o
clean :
rm -rf main.o ColorTransfer.o
也是对的,为什么CFLAGS和DFLAGS要分开写呢?
CC=g++
FLAGS += -I
FLAGS += -I./include
FLAGS=-L./lib/libopencv_core.so -L./lib/libopencv_highgui.so -L./lib/libopencv_imgproc.so -lopencv_core -lopencv_highgui -lopencv_imgproc
刚才少打了个L,但还是不行。。[/quote]
再好好看看!库文件和头文件引导的时候不一样的! 一个是CFLAGS 一个DFLAGS[/quote]
CC=g++
CFLAGS += -I.
CFLAGS += -I./include
DFLAGS = -L./lib/libopencv_core.so -L./lib/libopencv_highgui.so -L./lib/libopencv_imgproc.so -lopencv_core -lopencv_highgui -lopencv_imgproc
all: ColorTransfer
ColorTransfer: main.o ColorTransfer.o
$(CC) $(CFLAGS) main.o ColorTransfer.o -o ColorTransfer $(DFLAGS)
main.o: main.cpp
$(CC) $(CFLAGS) -c main.cpp -o main.o
ColorTransfer.o: ColorTransfer.cpp ColorTransfer.h
$(CC) $(CFLAGS) -c ColorTransfer.cpp -o ColorTransfer.o
clean :
rm -rf main.o ColorTransfer.o
成功!但是一定要写全路径吗?
CC=g++
FLAGS += -I
FLAGS += -I./include
FLAGS=-L./lib/libopencv_core.so -L./lib/libopencv_highgui.so -L./lib/libopencv_imgproc.so -lopencv_core -lopencv_highgui -lopencv_imgproc
刚才少打了个L,但还是不行。。[/quote]
再好好看看!库文件和头文件引导的时候不一样的! 一个是CFLAGS 一个DFLAGS
CC=g++
FLAGS += -I
FLAGS += -I./include
FLAGS=-L./lib/libopencv_core.so -L./lib/libopencv_highgui.so -L./lib/libopencv_imgproc.so -lopencv_core -lopencv_highgui -lopencv_imgproc
刚才少打了个L,但还是不行。。
CC=g++
FLAGS += -I
FLAGS += -I./include
FLAGS=-L./lib/libopencv_core.so -L./lib/libopencv_highgui.so ./lib/libopencv_imgproc.so -lopencv_core -lopencv_highgui -lopencv_imgproc
是这个意思吗?还是不行。。
CFLAGS += -I
CFLAGS += -I./include
DFLAGS=-L./libxx.a -lopencv_core -lopencv_highgui -lopencv_imgproc
$(CC) $(CFLAGS) main.o ColorTransfer.o -o ColorTransfer $(DFLAGS)
// lib自己的库补全试试