2016-07-12 53 views
0

要打開HDF5 - 載體,我現在有在預處理器是否有預處理程序選項來檢查HDF5的可用性?

#define HDF5 
#ifdef HDF5 
    #include "hdf5.h" 
#endif 

這意味着,我必須手動激活#define HDF5線(如在上面給出的代碼片段)或去激活(通過刪除它或將註釋字符放在它的前面)。有什麼樣#ifdef _HDF5更好的檢查(使用gcc)我的編譯選項?

對於OpenMP,例如,我有

#ifdef _OPENMP 
    #include <omp.h> 
#endif 

這意味着omp.h文件只包括,當適當的編譯器標記被設置。我希望爲hdf5提供類似的東西,但到目前爲止沒有發現任何東西。

回答

2

GCC有一個-D選項,以使代碼以外的處理器宏。

gcc -DHDF5 source.c 

將使#ifdef HDF5爲真。

+0

所有相關的編譯器確實有這樣的標誌(可能有不同的調用,例如MSVC++有'/ D') – MSalters

+0

好,非常感謝您指出我這樣一個重要和有用的概念;-) – Alf

相關問題