2014-12-29 14 views
5

다른 소스 파일은 기본 플래그를 사용합니까? 일부 소스 파일에는 추가 C++ 전 처리기 정의가 필요합니다. 저는 Qt 5를 사용합니다. QMKE_CXXFLAGS는 qmake 프로젝트에서 전 세계적으로 사용되는 것입니다.qmake를 사용하여 단일 소스 파일에 컴파일러 플래그를 지정하는 방법은 무엇입니까?

+0

마지막 줄은 downvotes 및 닫기 표의 초대입니다. 나는 당신이 그것을 제거하는 것이 좋습니다. 또한 왜 나머지 파일과 다른 방식으로 하나의 파일을 작성하려고하는지 명확히 할 수 있습니까? 무엇을 성취하려고합니까? – lpapp

+0

@lpapp에게 조언 해 주셔서 감사합니다. 내 질문을 다시 편집했습니다. – cetron

답변

4

이것은 Qt는 소스 자체 GUI 그림에 대한 이론에서 할 수 무엇을 사용한다 :

사용자 정의 컴파일러 사양 : 어떻게 컴파일러를 추가

SOURCES_NOOPTIMIZE = somefile.cpp 
nooptimize.name = nooptimize 
nooptimize.input = SOURCES_NOOPTIMIZE 
nooptimize.dependency_type = TYPE_C 
nooptimize.variable_out = OBJECTS 
nooptimize.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_IN_BASE}$${first(QMAKE_EXT_OBJ)} 
nooptimize.commands = $${QMAKE_CXX} $(CXXFLAGS) -O0 $(INCPATH) -c ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} # Note the -O0 
QMAKE_EXTRA_COMPILERS += nooptimize 

도 참조 고급 사용 in the documentation 다음 회원을 지원하십시오 :

회원 설명

명령 입력에서 출력을 생성하는 데 사용되는 명령입니다.

CONFIG 사용자 지정 컴파일러의 특정 구성 옵션입니다. 자세한 내용은 CONFIG 표를 참조하십시오.

depend_command 출력에 대한 종속성 목록을 생성하는 데 사용되는 명령을 지정합니다.

dependency_type 출력 파일 형식을 지정합니다. 유형이 TYPE_C, TYPE_UI, TYPE_QRC와 같이 알려진 유형이면 해당 유형의 파일 중 하나로 처리됩니다.

출력 파일의 종속성을 지정합니다.

입력 사용자 지정 컴파일러로 처리해야하는 파일을 지정하는 변수입니다.

사용자 지정 컴파일러의 작업에 대한 설명입니다. 일부 백엔드에서만 사용됩니다.

출력 사용자 지정 컴파일러에서 만든 파일 이름입니다.

output_function

생성되는 파일 이름을 지정하는 데 사용되는 사용자 정의 qmake에 기능을 지정합니다.

변수는 여기에 지정된 변수는 $ (VARNAME)로 프로 파일에 언급 된 경우 $ (QMAKE_COMP_VARNAME)로 대체되어 있음을 나타냅니다.

variable_out 출력물에서 생성 된 파일을 추가해야하는 변수.