Linux プログラムのコンパイル中にコンパイル時間と SVN バージョン番号を追加する

通常、プログラムを開発する際には「-v」などのバージョン照会コマンドを追加しますが、このときビルドバージョンやビルド日などが表示されることが多いので、この情報があれば非常に便利です。コンパイル時に毎回自動的に追加できます。

まずは時間を追加する方法について説明します。

1. 最も簡単な方法は、コードにマクロを直接追加することです。

[cpp] プレーン コピーを表示

  1. __日付と時刻__  

これらを通じて、コンパイル時間を直接取得し、それをコード内に出力できます。

2. Makefile で変数を定義するのは少し現実的ではありません

[cpp] プレーン コピーを表示

  1. CT="\"`日付 '+%Y-%m-%d %H:%M:%S'`"\"  


次に、コンパイルコマンドラインにマクロを追加します。

[cpp] プレーン コピーを表示

  1. -DCT=$(CT)  


次に、コード内でそれを出力できます

3. さらに、スクリプトを使用して日付をファイルに出力することもできます

[cpp] プレーン コピーを表示

  1. #!/bin/sh  
  2. バージョン=1.0  
  3. 時間=\"$(日付 '+%Y-%m-%d %H:%M:%S')\"  
  4. Output="#define BUILD_TIMER $Time\n#define BUILD_VERSION $Version"  
  5. echo "$Output" > version.h  

これは少し面倒ですが、メモしておいて損はありません。
 

次に、svn バージョンを取得する方法を紹介します。

1. Makefile で変数を定義する

[cpp] プレーン コピーを表示

  1. REV=`svn 情報 | grep リビジョン | ああ、「{print $2}」  
  2. #または  
  3. REV=`svn 情報 | grep リビジョン | カット -d " " -f 2`  
  4. REV=`svnversion ../../`  

次に、コンパイルコマンドラインにマクロを追加します。

[cpp] プレーン コピーを表示

  1. -DRIVE=$(REV)  


完了しました。コード内に出力します。

Guess you like

Origin blog.csdn.net/u012294613/article/details/132432012