ホームページ >バックエンド開発 >C++ >CMake でプリプロセッサ マクロを定義するにはどうすればよいですか?

CMake でプリプロセッサ マクロを定義するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-29 21:11:14931ブラウズ

How to Define Preprocessor Macros in CMake?

CMake によるプリプロセッサ マクロの定義

C では、プリプロセッサ マクロは、シンボリック定数を定義したり、コンパイル中にコードの動作を変更したりする便利な方法を提供します。 CMake を使用してプリプロセッサ マクロを定義するには、主に 2 つのオプションがあります。

方法 1: add_compile_settings (CMake >= 3.12)

CMake 3.12 以降では、 add_compile_settings コマンドを使用してプリプロセッサ マクロを定義できます。このアプローチは、前の方法よりもきめ細かく、コンパイル定義、インクルード ディレクトリ、およびコンパイラ オプションを分離できます。

add_compile_definitions(OPENCV_VERSION=${OpenCV_VERSION})
add_compile_definitions(WITH_OPENCV2)

方法 2: 従来の add_settings (非推奨)

CMake 3.12 より前では、プリプロセッサを定義するために add_settings コマンドが使用されていました。マクロ:

add_definitions(-DOPENCV_VERSION=${OpenCV_VERSION})
add_definitions(-DWITH_OPENCV2)

注: 従来のメソッドでは、プリプロセッサ定義を示すために -D プレフィックスが必要です。

追加の考慮事項:

  • 次のコマンドを使用して、ターゲットごとにプリプロセッサ マクロを定義することもできます。 target_compile_settings コマンド。
  • コンパイラ フラグに使用できるコマンドの詳細については、https://cmake.org/cmake/help/latest/command/add_settings.html
  • にある CMake ドキュメントを参照してください。

以上がCMake でプリプロセッサ マクロを定義するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。