2010-11-29 7 views
2

Je suis un débutant à cmake. Je veux ajouter un nouveau drapeau à appliquer pour ma construction de module qui utilise cmake comme outil de construction. Je suis en train d'essayer d'ajouter l'indicateur dans CMakeLists.txt mais les modifications ne sont pas reflétées. Devrais-je appliquer les modifications à un autre fichier? J'ai essayé de nettoyer en utilisant $ cmake clean. mais le problème existe toujours.Appliquer des drapeaux dans l'environnement CMake

Demander de l'aide.

Cordialement Santosh

+0

Que voulez-vous dire par drapeau ? Une variable cmake? Un argument de compilateur? Un '# define'? – tibur

Répondre

2

Si vous voulez parler des drapeaux du compilateur vous pouvez faire quelque chose comme ci-dessous, notez que je suis un débutant trop donc il pourrait bien être de meilleures façons:

if(MSVC) 
     set(CMAKE_CXX_FLAGS " /DWIN32 /W3 /GX /GR /Wp64 /Zc:forScope") 
     set(CMAKE_CXX_FLAGS_DEBUG " /D_DEBUG /MDd /Zi /Ob0 /Od /GZ /Gm /RTC1 /ZI") 
    elseif(CMAKE_COMPILER_IS_GNUCXX) 
     set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} " -ansi -Winvalid-pch") 
    endif() 
+1

vous souhaitez généralement ajouter aux drapeaux afin que vous n'obstruez pas les drapeaux que l'utilisateur ou un CMakeLists plus haut a mis. – RobertJMaynard