배경맥 OS 프레임 워크 헤더 파일 MachineExceptions.h 오류 : 선언은 선언하지 않는 것도
나는 LSGetApplicationForURL
API를 사용하려고 여기에 매우 유용한 예를 찾을거야 - 그러나 how to get default mail client version on mac os x?
을 때 내가의 몇 가지 선언을보고 어디 라인 (53)의 주위에 MachineExceptions를 열어
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:53: error: declaration does not declare anything
은 이것이다 : 나는이 오류 코드를 컴파일하려고은 MacTypes.h
에 정의 된 유형입니다. 이것이 Carbon Core 프레임 워크의 일부라는 것을 알았습니다.
처음에는 위 코드에서 최상위 헤더를 포함합니다 (실제로 위 예제에서 나온 정확한 샘플 코드 사용). 그래서 나는 MachineException.h
또는 다른 헤더 파일을 포함 시키거나 터치하지 않습니다. 분명히 결국이 오류로 이어질 몇 가지 종속성이있는 것 같습니다.
연구 내가 해봤 일/중 일부
: 나는 탄소 코어가 10.8에서 사용되지 것을 발견- (버전 내가 사용) - 결과 https://developer.apple.com/library/mac/#releasenotes/General/CarbonCoreDeprecations/ 의
MacTypes.h
에서 Carbon Core 프레임 워크는 다소 빈약한데, 이는/usr/include/ 에서
- 으로 조건부로 포함되었습니다. Carbon Core 프레임 워크에서
MacTypes.h
을 편집하고 MachineExceptions.h에서/usr/include의 MacTypes를 정보별로 포함하려고했습니다. 위의 '지원 중단'페이지에서 - 헤더 파일을 포함하는 순서로 바뀌 었습니다 (이 연구를하는 동안 누군가 다른 사람에게 도움이되었습니다).
- 내가합니다 ('-framework'옵션을 사용) 내 메이크에서 CoreFoundation에서와 ApplicationServices 프레임 워크 나는이 밖으로 정렬하려고 많은 시간을 보냈다으로이 문제에 대한 의견이 크게 감사합니다
을 포함하고있다. 여기에있는 것이 근본적이거나 기본적인 것이라면 사전에 사과드립니다. Mac OS 프로그래밍에 익숙하지 않고 Frameworks의 유선 방식과 사용 방법을 이해하려고합니다.
감사합니다.
Spot on, Cody! 나는 makefile에 상충되는 심볼을 가지고 있었다. 그것을 정리하고 성공적인 컴파일을 얻었습니다. 당신의 도움을 주셔서 감사합니다!! – chicagozfinest