Home Php C# Sql C C++ Javascript Python Java Go Android Git Linux Asp.net Django .net Node.js Ios Xcode Cocoa Iphone Mysql Tomcat Mongodb Bash Objective-c Scala Visual-studio Apache Elasticsearch Jar Eclipse Jquery Ruby-on-rails Ruby Rubygems Android-studio Spring Lua Sqlite Emacs Ubuntu Perl Docker Swift Amazon-web-services Svn Html Ajax Xml Java-ee Maven Intellij-idea Rvm Macos Unix Css Ipad Postgresql Css3 Json Windows-server Vue.js Typescript Oracle Hibernate Internet-explorer Github Tensorflow Laravel Symfony Redis Html5 Google-app-engine Nginx Firefox Sqlalchemy Lucene Erlang Flask Vim Solr Webview Facebook Zend-framework Virtualenv Nosql Ide Twitter Safari Flutter Bundle Phonegap Centos Sphinx Actionscript Tornado Register | Login | Edit Tags | New Questions | 繁体 | 简体

0
votes
answers
楼主
28 views
+10

CMake和標頭搜索路徑

0

我將一個項目移植到CMake,並努力尋找如何設置標頭搜索路徑(以前使用編譯器標誌設置,例如-I "../../Source")。CMake和標頭搜索路徑

我目前有:

target_include_directories (jni-bridge PRIVATE 
    "../../Analysis" 
    "../../Source" 
) 

但是,這是行不通的。我應該如何設置路徑,以及它們相對於哪個位置?

+0

爲什麼不在高級CMakeLists.txt的搜索路徑中添加這些目錄?如果這些不是當前CMake項目的一部分,那麼最好使用一些CMake變量添加這些目錄,以使項目具有可移植性。 –

沙发
0
0

在內部,CMake使用絕對路徑作爲包括目錄。如果相對路徑與target_include_directories一起使用,則將相對於當前源目錄${CMAKE_CURRENT_SOURCE_DIR})進行解釋。


上面時發生器表達式不使用是真實的。

生成器表達式$<INSTALL_INTERFACE:..>可能(並強烈建議)使用相對於安裝前綴解釋的相對路徑。

發生器表達式$<BUILD_INTERFACE:...>應該使用絕對路徑。

discard