2016-10-03 26 views
8

Bu benim projem yapıdır. Örnek:#define Jamfiles

#ifdef SOMEVALUE 
    Code 
#endif 

Ben Jamfile içinde #define ile cpp dosyalarını derlemek gerekiyor. İki tür yürütülebilir dosyam var (#define ve bir tane olmadan), bunu Jamfile'de değil, cpp kodunda yapmam gerekiyor.

I (#Ifdef #endif bloğunun içinde tanımlarını bulamayan) çalışmıyor hangi aşağıdakileri denedim:

Benimkinde
lib libname : [ glob *.cpp ] : <link>static : <define>SOMEVALUE ; 

cevap

5

ile GCC aracılığıyla derleme "define" özelliğini kullanırken size örnek verilmiş görüldü ettik. Ancak, özellik, hedef tanımının requirement olarak belirtilmesi gerekir. requirements, kullanım durumunuzdaki gibi dördüncü değil, hedef tanımının üçüncü argümanı olarak belirtilir. Dolayısıyla yerine:

lib 
    libname # main-target-name 
    : [ glob *.cpp ] # sources 
    : <link>statiC# requirements 
    : <define>SOMEVALUE # usage-requirements 
    ; 

Hedef gereksinimlerine kullanım gereksinimlerinden "< > define" taşımak gerekir: Hedef tanımına bütün argümanlar here ne bulabilirsiniz

lib 
    libname # main-target-name 
    : [ glob *.cpp ] # sources 
    : <link>static <define>SOMEVALUE # requirements 
    : # usage-requirements 
    ; 

.

0

önceki projemiz ayıklama modu için farklı derleme için kullandıkları - arayla hangi Hata ayıklama sembollerini eklemekten, çalışma süresi boyunca birçok yararlı değeri yazdırmak için kullanın. yolu

#ifdef DEBUG 
/* Piece of code here*/ 
#endif 

yapıldığını ve bir önişlemci tanımını ekleme -DDEBUG

İlgili konular