2017-06-27 10 views
1

私はライブラリへのパスを含めるために変更する必要のあるメイクファイルを持っています。他の人が私に与えたプログラムを実行しようとしています。私は実際にmakefileがどのように動作するのか混乱していて、前の行が何であるか理解していません。メークファイルのライブラリを変更する方法

これらは、メイクファイルを修正するために私に与えられた方向である。

LIBS = -L"../../LIB/libpca/build" -lpca -larmadillo 

in the Makefile to represent the folder where you installed the libpca and armadillo libraries. 

を "LIB/libpca /含ま../../" INCS = -I:

変更行私は今、何を私の新しいパスは次のとおりです。

デスクトップ/ PCA-CD /ライブラリ

が、私は何ですが、私は本当に変更する必要があるということです理解していません。提供される任意の助けを

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

私は、彼らが行を変更する示唆していると思う:Desktop/PCA-CD/Librariesが相対パスで、ライブラリがのサブディレクトリに格納されていることを前提としていること

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 

へのお知らせビルドディレクトリ。ビルドディレクトリから、 ls Desktop/PCA-CD/Libraries/buildを実行して正しいパスであることを確認してください。そうでない場合は、ライブラリをインストールしたディレクトリの絶対パスに置き換えます。

関連する問題