我有一个makefile,我需要修改它以包含库的路径。我正在尝试运行别人给我的程序。我真的很困惑makefile是如何工作的,并且不理解前面的行是什么。
这些是我修改makefile的指示:
更改行: INCS = -I“../../ LIB / libpca / include”
LIBS = -L"../../LIB/libpca/build" -lpca -larmadillo
in the Makefile to represent the folder where you installed the libpca and armadillo libraries.
现在我现在的新路径是什么:
桌面/ PCA-CD /库
但我不明白我真正需要改变的是什么。
这是makefile的样子:
PROG = CD
UNAME := $(shell uname)
ifeq ($(UNAME), Darwin)
CXX = clang++ -stdlib=libc++
else
CXX = g++
endif
FLAGS = -O0 -g3 -Wall -std=c++0x -pthread
INCS = -I"../../LIB/libpca/include"
LIBS = -L"../../LIB/libpca/build" -lpca -larmadillo
SRCS = CD.cpp
RM = rm -f
all :
$(CXX) $(FLAGS) $(INCS) $(SRCS) $(LIBS) -o $(PROG)
# $(CXX) $(FLAGS) $(SRCS) -o $(PROG)
clean :
$(RM) $(PROG)
感谢您提供的任何帮助。
答案 0 :(得分:0)
我认为他们建议改变这条线:
INCS = -I"../../LIB/libpca/include"
LIBS = -L"../../LIB/libpca/build" -lpca -larmadillo
到
INCS = -I"Desktop/PCA-CD/Libraries/include"
LIBS = -L"Desktop/PCA-CD/Libraries/build" -lpca -larmadillo
请注意Desktop/PCA-CD/Libraries
是一个相对路径,并假定该库存储在构建目录的子目录中。在您的构建目录中,尝试运行ls Desktop/PCA-CD/Libraries/build
,以确认它是正确的路径。如果不是,请将其替换为安装库的目录的绝对路径。