2012-08-11 3 views
2

맥 오에스텐에서 pulseaudio를 컴파일하려고하는데, 기본적으로 inttypes.h, errno.h 또는 stdio.h과 같은 표준 파일을 찾지 못하는 것에 관한 많은 오류가 발생합니다. -isystem/usr/includeCPPFLAGS에 넣으면 오류가 수정되지만 나중에는 fatal error: 'CoreServices/CoreServices.h' file not found이됩니다.Mac OS X에서 CoreServices.h로 pulseaudio 컴파일하기

나는 또한 -framework CoreServices 및/또는 -I/System/Library/Frameworks/CoreServices.framework/Headers을 추가하려고 시도했지만 작동하지 않았습니다.

컴파일러를 찾는 올바른 방법은 무엇입니까? 나는 clang을 사용하고 있다고 생각합니다. gcc는 더 많은 오류를 생성합니다.

+0

안녕하세요, adam, pulseaudio를 설치하고 osx에서 실행 했습니까? –

답변

1

올바른 경로에 있습니다. 해당 프레임 워크와 플래그가 포함되어 있지만 올바른 구성 옵션을 사용하면 포함 된 시스템도 올바르게 선택됩니다.

Makefile은 --with-mac-sysroot--with-mac-version-min 속성을 기반으로 적절하게 프레임 워크를 설정하려고 시도합니다. 당신이 산 사자 (10.8)에 구축하는 경우가 계속되는 펄스 오디오 10.8 SDK에서 누락 헤더가로 10.7 최소 호환성을 사용할 필요가

--with-mac-sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/ 
--with-mac-version-min=10.7 

다음 SDK의 위치를 ​​지정하는

예 구성 옵션 에 참조를 만든다.

autogen.sh에 구성 옵션을 전달할 수 있습니다.이 옵션은 autoconf가 완료되면 configure을 실행합니다. 당신은 M4의 하위 디렉토리에 M4 매크로 오류가 aclocal을에서 M4 매크로를 복사 얻고 다시 시도하십시오

./autogen.sh --prefix=/usr/local --disable-jack --disable-hal --disable-bluez --disable-avahi --with-mac-sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/ --with-mac-version-min=10.7 --disable-dbus 

: 당신은 마스터 지점에 테스트되었습니다 다음 명령을 시도 할 수 있습니다.

몇 가지 다른 문제가 있지만 이러한 문제는 신속하게 해결 될 수 있습니다. 그것을 여기에 추가하면 누군가가 이것을 만들려고 노력하는 데 도움이 될 수 있습니다.

오류 : Multiprocessing.h 찾을 수 없습니다 : 이 10.7에서 사용되지하지만 헤더는 여전히 그것을 CoreServices에 포함되어 그냥 변경 구축 할 것 파일 src/pulsecore/semaphore-osx.c에 명령을 포함한다.

-#include <Multiprocessing.h> 
+#include <CoreServices/CoreServices.h> 

오류 : 선언되지 않은 ' _LTX_preloaded_symbols 프로그램 lt_를 제공합니다. src/daemon/dumpmodules.c을 컴파일하는 데 문제가있을 수 있으며 외부 매크로를 선언하여 수정할 수 있습니다.

extern const lt_dlsymlist lt_preloaded_symbols[]; 

오류 : gdbm.h : 어떤 이유로 기본에 대한 해당 파일이나 디렉토리 는 디렉토리 컴파일러에 의해 간주되지 않습니다 포함하고 당신의 src/Makefile 모양의 경로를 추가하고 변수 GDBM_CFLAGS을 설정할 수 있습니다 .

GDBM_CFLAGS=-I/usr/local/include 

nJoy!

+0

+1 "몇 가지 다른 문제". 그것은 내 하루를 구했다. – fbmd

+0

그리고 너는 내 하루 =) Tx 만들었 어! –