2017-10-31 7 views
0

ビルド、インクルード、およびsrcの3つのフォルダでプログラムを分割しました。ヘッダーとメインでCMakeLists.txtを作成する

ビルドは、Makefileから作成されたすべてのファイルを移動し、インクルードするには "file.h"を含み、srcには "file.c"と "main.c"が含まれます。

私はCMakeLists.txtファイルでこれを書いた:

cmake_minimum_required (VERSION 3.5.1) 

project(Listas_interlazadas) 

include_directories(${include}) 


add_executable(ejec 
    src/main.c 
    src/listas.c 
    include/listas.h 

) 

それにもかかわらず、私は私が何とかsrcフォルダを含めるべきであると考えています。また、ビルドフォルダにすべてのファイルをどのように送信するのですか?ターミナルから、右?

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

答えて

0

コードにマイナーな再作業が必要です。

  • コマンドinclude_directoriesは、有効なパスを指している必要があり
  • プロジェクトの次のような構造と仮定し、彼らはあなたのソースファイルのいずれか

には含まれていない場合にのみ、追加のヘッダファイル:

project 
    +--source 
    | +--CMakeLists.txt 
    | +--src 
    | | +--main.c 
    | | +--listas.c 
    | +--include 
    |   +--listas.h  
    +--build 

作り直しCMakeLists.txt

cmake_minimum_required (VERSION 3.5.1) 

project(Listas_interlazadas) 

include_directories(include) 

add_executable(ejec 
    src/main.c 
    src/listas.c 
) 
戻るご質問

  • は、ソースを追加:あなたはすでに必要なソースファイルを挿入します。 add_executableを参照してください。
  • フォルダをビルドするためにソースをコピーする:これは必須ではありません。

プロジェクトをビルドするには、cmakeとmake(またはWindowsのnmake)を実行する必要があります。

手順:ビルドフォルダ

  • 実行するために

    1. コマンドシェルを開き
    2. 移動:cmakeの../source
    3. ラン:

    Some important parts of a CMakeLists.txt

  • +0

    作ります'add_executable'でヘッダーを列挙すると、意味が成り立ちます。それらのプロジェクトがプロジェクトの一部であることをIDEに知らせることができます。 – oLen

    +0

    あなたは正しいです。しかし、これはOPによって要求されたものではなく、IDEによって異なります。例えば。 QtCreatorはそれを必要としません。 –

    関連する問題