2016-02-27 72 views
1

我遇到了安裝C++庫的問題。該CMake命令是成功的,產生的Makefile,但它給出了一個警告:在的CMakeLists.txt「沒有規則使目標'安裝'」...但是Makefile存在

CMake Warning (dev) at CMakeLists.txt:27 (LINK_DIRECTORIES): 
This command specifies the relative path 

../usr/local/lib 

as a link directory. 

Policy CMP0015 is not set: link_directories() treats paths relative to the 
source dir. Run "cmake --help-policy CMP0015" for policy details. Use the 
cmake_policy command to set the policy and suppress this warning. 
This warning is for project developers. Use -Wno-dev to suppress it. 

第27行是

Boost_LIBRARY_DIR_DEBUG:PATH=/usr/local/lib 

我不明白爲什麼這樣的警告會引起我的任何問題。但是當我運行make install時,出現錯誤:

make: *** No rule to make target `install'. Stop. 

任何想法?

+1

您是否知道生成的makefile實際上包含'install'目標? –

+1

兩條建議:首先,用相應的錯誤消息搜索網頁。其次,提取一個最小的例子。就目前而言,您的問題不在話下,請參閱發佈指南。 –

回答

6

你能提供一個完整的makefile嗎? 但現在我可以告訴 - 你應該檢查「安裝」目標已經存在。因此,檢查Makefile是否包含一個

install: (anything there) 

line。如果沒有,那麼就沒有這樣的目標,所以make有權利。可能你應該使用「make」命令來編譯,然後按原樣使用它,或者手動安裝。

安裝不是任何make的標準,它只是一個共同的目標,可能存在,但不是必要的。

+2

經驗不足的提示:使用'cat Makefile | grep install:'執行此檢查 – XavierStuvw

0

我也遇到了同樣的錯誤。這裏是修復: 如果您正在使用的cmake 的GUI

  1. 清潔在C進行加載庫的高速緩存。
  2. 配置庫。
  3. 生成Unix文件。

如果你錯過了第3步:將出現

*** No rule to make target `install'. Stop.

錯誤。

0

我收到了同樣的錯誤信息,我的問題是運行命令make install時我沒有在正確的目錄中。當我改變到有我的生成文件它的工作目錄。

所以可能你不在正確的目錄中。