pkg-config가 어떤 이유로 옵션을 인식하지 못합니다

pkg-config가 어떤 이유로 옵션을 인식하지 못합니다

pkg-config를 사용하여 패키지의 포함 디렉터리를 변경하고 싶지만 어떤 옵션도 허용하지 않는 것 같습니다.

다음 명령을 실행한 후:

pkg-config --cflags ImageMagick -fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -I/usr/include/x86_64-linux-gnu/ImageMagick-6 -I/usr/include/ImageMagick-6

...첫 번째 cflag 옵션에서 즉시 실패합니다.

Unknown option -fopenmp

이것이 정상적인 행동입니까? 어떻게 작동하게 할 수 있나요?

추신: Debian Jessie를 사용합니다.

답변1

pkg-config컴파일러나 링커와 함께 사용하기 위한 플래그를 출력합니다. 일반적으로 다음과 같이 사용합니다.

gcc $(pkg-config --cflags ImageMagick) …

pkg-config명령을 사용하여 특정 패키지에서 사용되는 경로를 변경할 수 없습니다 . 경로는 해당 .pc파일에 정의되어 있습니다.예를 들어 /usr/lib/x86_64-linux-gnu/pkgconfig/ImageMagick.pc. 이를 사용자 정의하려면 가장 안전한 옵션은 해당 파일을 다른 곳에 복사하고 적절하게 수정한 다음 환경 변수를 사용하여 파일 경로를 지정하는 것입니다 PKG_CONFIG_PATH.

ImageMagick 라이브러리를 직접 빌드한 경우 빌드에서 유효한 파일이 생성되어야 합니다 .pc. 또한 .pc파일을 사용하여 다음과 같은 옵션을 지정 해서는 안 됩니다 -fopenmp. 이는 빌드 명령, makefile, 또는 환경 변수(또는 makefile 변수)에 CPPFLAGS있어야 CFLAGS합니다 CXXFLAGS.

관련 정보