2011-05-13 4 views
4

2日前、私は外部ツールを追加して、autotoolsを使ってプロジェクトをコンパイルしました。ExternalProjectでCMakeエラーが発生しました

CMake Error at /usr/share/cmake-2.8/Modules/ExternalProject.cmake:710 (message): error: no download info for 'libantlr3c' -- please specify existing SOURCE_DIR or one of URL, CVS_REPOSITORY and CVS_MODULE, SVN_REPOSITORY or DOWNLOAD_COMMAND

そして、実際に指定されているこれらのルールの1(SOURCE_DIR):それは完全に

が、私は奇妙なエラーを持っている...今日まで働いていた

cmake_minimum_required(VERSION 2.8) 
# ... 
include(ExternalProject) 
ExternalProject_Add(
    libantlr3c 
    SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3 
    CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3/configure --prefix=${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3 
    PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3 
    BUILD_COMMAND make 
    BUILD_IN_SOURCE 1 
) 

だから、このエラーは「hasn何の意味も...そして、それは昨日完全に働いていた(今までは何も変わっていない)。

ありがとうございました!

答えて

3

これは2.8.0バージョンのバグです。バージョン2.8.3以上をインストールしてください...

3

私は2.8.6でも同様の問題がありました。私は必要なヒントを私に与えたオンラインの例を見つけました。

URL引数を使用する必要がありますが、キャッチがあります。ディレクトリへのパスを与えるだけであれば、ディレクトリではなくアーカイブを指すことになります。例えば、:あなたは「//ファイル」:を使用してパスを付加する必要が

ExternalProject_Add(
    libantlr3c 
    URL file://${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3 
    SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3 
    CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3/configure --prefix=${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3 
    PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/lib/libantlr3c-3.1.3 
    BUILD_COMMAND make 
    BUILD_IN_SOURCE 1 
) 

今、私はちょうどそれが存在しない場合、それは<project>-mkdirを探している理由(私のプロジェクトに)を把握する必要があります。

関連する問題