RPM을 빌드 할 때 사용하는 Spec 파일 내에서 주석과 매크로를 동시에 사용할 때 주의해야 한다.
예시
Spec 파일 내에서 아래의 코드처럼 작성하는 경우에는 주석을 무시하고 매크로가 동작한다.
샘플 코드
| |
주석으로 표시된 # %define TEST enable을 무시하고 disable이 출력되는 것을 기대하는 예제이다.
결과
| |
주석이 무시되고 enable이 출력된 것을 확인 할 수 있다.
이유
Spec에서 주석은 #을 맨 앞에 적어 주는 것이 맞다. 하지만 주석과 매크로를 동시에 사용하는 경우에는 매크로가 먼저 동작하기 때문에 주석을 무시하고 매크로가 동작하는 것이다. 매크로가 동작하지 않도록 %%를 추가하면 주석이 의도한 대로 동작하는 것을 알 수 있다. 원문에서 해당 내용을 확인 할 수 있다.

![[Linux] Crontab 사용법](/post/2023-09-21-crontab/tmp_wordcloud_hu_778a513e8f326e68.webp)
![[Shell] 숫자로 메뉴 실행하는 셸스크립트 예제](/post/2021-05-17-shell-script-number-example/tmp_wordcloud_hu_5f60c494c4ed0254.webp)
![[Science] 버뮤다 삼각지대의 진실 - 과학과 기록으로 본 오해와 사실](/post/2025-09-01-bermuda-triangle-facts-myths-science/wordcloud_hu_8aee64a1d8f156fb.webp)
![[Cycle] 휠 밸런스: 자동차에 필수, 자전거에 선택적인 이유](/post/2025-03-04-wheel-balance-necessary-for-cars-optional-for-bikes/index_hu_98794226284a1f95.webp)
![[C/C++] gcc로 dlopen 하는 방법](/post/2023-02-13-dlopen/tmp_wordcloud_hu_dec9f9e3bce82fc1.webp)