libxml/tree.h 해당 파일 또는 디렉토리가 없습니다.
다음 오류가 발생합니다.
libxml/tree.h 해당 파일 또는 디렉토리가 없습니다.
했습니다를 했습니다.libxml2.dylib
하지만 이런 문제가 발생하고 있습니다.제발 도와주세요.
여기 "프로젝트 파일 설정"의 지시를 따릅니다.
프로젝트 파일 설정
프로젝트에 libxml2.dylib을 추가해야 합니다(Frameworks 섹션에 넣지 마십시오).맥에서는 다음 사이트에서 확인할 수 있습니다.
/usr/lib/libxml2.dylib
그리고 아이폰의 경우, 당신은 당신이 원하는 것을 원할 것입니다./Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk/usr/lib/libxml2.dylib
버전libxml2는 .dylib(friendly .framework가 아님)이기 때문에 우리는 아직 한 가지 더 해야 할 일이 있습니다.프로젝트 빌드 설정(Project->프로젝트 설정 편집->Build)으로 이동하여 "Search Paths"를 찾습니다."헤더 검색 경로"에서 다음 경로를 추가합니다.
$(SDKROOT)/usr/include/libxml2
Xcode 4.3 / 5 / 6에서 libxml2 추가
libxml2를 첨가하는 것은 엉덩이에 크고 뚱뚱하고 변덕스러운 고통입니다.당신이 그것을 할 것이라면, 당신의 프로젝트를 구축하는 데 너무 무리가 가기 전에 그것을 하세요.
두 가지 방법으로 추가해야 합니다.
1. 대상설정
대상(프로젝트 아님)을 클릭하고 선택합니다.Build Phases
.
표시 삼각형을 클릭합니다.Link Binary With Libraries
. 합니다를 합니다.+
라이브러리를 추가합니다.
목록 맨 아래로 스크롤하여 선택합니다.libxml2.dylib
됩니다. 그러면 libxml2 라이브러리가 프로젝트에 추가됩니다.
2. 프로젝트설정
이제 프로젝트를 어디서 찾아야 하는지 세 번 더 말해야 합니다.
합니다를 합니다.Build Settings tab
.
로 까지 .Linking
부분. 에서 프로젝트 열 아래에서 두 번 클릭합니다 다음을 클릭합니다 on the click 번 double 열을 더블 클릭합니다.Other Linker Flags
을을 합니다.+
를 .-lxml2
더 많이.
같은 탭에서 아래로 스크롤하여Search Paths
부분.
열 의 의 의 Framework Search Paths
덧셈행/usr/lib/libxml2.dylib
.
Header Search Paths
그리고.User Header Search Paths
덧셈행$(SDKROOT)/usr/include/libxml2
.
마지막 두 경우에는 경로가 디버그 및 릴리스에 입력되었는지 확인합니다.
3. 깨끗함
아래 Product
③Clean
.
그렇다면, 제가 당신이라면 (그리고 현실을 직시하자, 저는 아마) Xcode를 그만두고 자리를 떴을 것입니다.당신이 돌아와서 발사할 때 당신은 가는 것이 좋을 것입니다.
Xcode 6의 경우 다음 작업을 수행해야 했습니다.
1) 프로젝트의 대상에 "libxml2.dylib" 라이브러리 추가(Build Phases -> Link Binary With Libraries)
2) 대상의 헤더 검색 경로에 "$(SDKROOT)/usr/include/libxml2" 추가(빌드 설정 -> 헤더 검색 경로)
이 후 대상이 성공적으로 구축됩니다.
할 도 도 ./usr/include/libxml2
당신의 포함 경로로.
@Matt Ball의 링크를 형성하고,
저는 팔로우가 저에게 도움이 된다는 것을 알았습니다.
프로젝트에 libxml2.dylib을 추가해야 합니다(Frameworks 섹션에 넣지 마십시오).맥에서는 다음 사이트에서 확인할 수 있습니다./usr/lib/libxml2.dylib
그리고 아이폰의 경우, 당신은 당신이 원하는 것을 원할 것입니다./Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/usr/lib/libxml2.dylib
버전
는 .이기 때문에 할 일이 더.libxml2 는 .dylib(friendly .framework 이기 ) 에 이 는 이 .(프로젝트 빌드 설정으로 합니다)Project->Edit Project Settings->Build
)와 "( )" "을 (를 )"를 찾습니다Search Paths
경로:"에 다음 를 추가합니다. "헤더 검색 경로"에서 Mac에 다음 경로를 추가합니다.
/usr/include/libxml2
Ray Wenderlich는 이 문제를 해결하는 gdata 사용에 대한 블로그 게시물을 가지고 있습니다.기본적으로 다음과 같은 간단한 단계가 있습니다.
XCode에서 Project\Edit Project Settings(프로젝트 설정 편집)을 클릭하고 "All Configuration(모든 구성)"이 선택되어 있는지 확인합니다.
검색 경로 찾기\헤더 검색 경로 설정 및 /usr/include/libxml2를 목록에 추가합니다.
마지막으로 링크를 찾습니다.기타 링커 플래그 섹션과 -lxml2를 목록에 추가합니다.
원래 게시물: gdataxml로 xml 문서 읽기 및 쓰기
저도 마찬가지로 최신 Xcode(4.3.x)에 $(SDKROOT)/usr/include/libxml2를 추가해야 했습니다.또한 몇 시간 동안 나를 맴돌게 한 것은 내가 "Project"가 아닌 "TARGET"을 수정하고 있었다는 사실입니다(Xcode의 새로운 UI는 너무 복잡해서 간과하기 쉽습니다).프로젝트 수정이 필요합니다!
또 다른 해결책. 헤더 검색 경로 등의 모든 단계를 수행하고 프로젝트 설정에서 선택한 구성이 올바른지 확인합니다.프로젝트 빌드 설정을 두 번 클릭하면 배포 설정에서 변경할 수 있지만 "디버그" 설정에서 헤더 검색 경로를 추가하려고 합니다.따라서 올바른 설정인지 확인합니다.또는 모든 설정을 선택합니다.
xCode 4.3.2의 경우 단순히 /usr/include/libxml2가 아닌 $(SDKROOT)/usr/include/libxml2를 헤더 검색 필드에 입력해야 함을 발견했습니다.
매버릭스(OS X 10.9) 시점에서 /usr/include 디렉토리가 사라졌습니다.여기에 있는 답변의 절반은 사용되지 않습니다. 포함 디렉터리를 분류하기 전에는 응용 프로그램이 컴파일되지 않기 때문입니다.
단말기에서 MacOSX SDK에 대한 심볼릭 링크를 생성하는 문제를 다음 명령을 사용하여 해결했습니다.
sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include /usr/include
이제 응용프로그램이 다시 컴파일됩니다.
차이점이 뭔지는 모르겠지만 대상뿐만 아니라 프로젝트에 포함 경로를 추가합니다.
Lion에서 Lion을 추가하여 된 같은 문제에 직면하고 있었습니다./usr/include/libxml2
플래그 "flag"가 있는 경로를 포함하려면 위의 내용이 모두 효과적이지 않을 경우 이를 사용합니다.
스노우 레오파드와 X코드 3.2로 업그레이드한 후 프로젝트(X코드 3에서 개발된 것. 레오파드에서 개발된 것)를 다시 열었을 때 이 문제가 있었습니다.궁금할 정도로, 그것은 단지 몇몇 종류의 빌드에만 영향을 미쳤습니다(에뮬레이터 빌드는 잘 되었고, 디바이스 빌드는 오류를 주었습니다).그리고 저는 /usr/include에 libxml2를 가지고 있고, 그것은 정말 libxml/tree.h를 포함합니다.
'클린'이라는 마법도 통하지 않았지만 '빈 캐시'는." (애플 로고와 파일 사이의) XCode 메뉴 아래에서 (이전 버전에 해당 메뉴가 있었는가?) 효과가 있었습니다.이유는 모르겠지만, 청소 후 libxml/tree.h에 대한 불만은 더 이상 없었습니다.
또한 "항상 검색 사용자 경로"를 YES로 선택합니다.X 코드 4.3.3에서는 기본적으로 NO
다음 단계를 따르십시오.
하기
은 / libxml2.dylib는 /usr/lib/libxml2.dylib의 맥 수 .경로를 합니다. " " " "
[프로젝트명] ① (②) -> 프로젝트 -> 설정 빌드 -> 모두 선택 (③)
상자에 입력글색로력색력로색e글에rhhx색ns
경로 -+ ->SDKROOT "$(SDKROOT)/usr/include/libxml2" "$(SDKROOT)/usr/include/libxml2"를 합니다."flag"에합니다. " " "에 " -lxml2
22단계 "Other Linker Flags( 링커 플래그)" 으로 " Flags(기타 링커 플래그)"
"Other Linker Flags" 행을.+를 누른 후 목록에 "-lxml2"를 추가합니다.프로젝트 유형을 ARC로 변경합니다 -> 아니요 자동 참조 카운팅을 아니요 2단계와 같이 ARC를 검색할 수 있습니다
Xcode 4.5 저는 The CW의 솔루션을 전적으로 사용했습니다.유일한 예외는 $(SDKROOT)/usr/include/libxml2가 저에게 맞지 않았고, 제 프로젝트 헤더 검색 경로 및 사용자 헤더 검색 경로에 "$(SDK_DIR)"/usr/include/libxml2를 추가해야 했습니다.프로젝트가 성공적으로 구축된 후.
편집: 제 프로젝트(MyProject라고 함) 안에 Google GData 프로젝트가 있습니다(제 프로젝트가 사용합니다).GData에는 libxml이 필요합니다.프로젝트 마이프로젝트를 성공적으로 구축하기 위해 "$(SDK_DIR)"/usr/include/libxml2를 마이프로젝트의 헤더 검색 경로에 추가하고 GData의 헤더 검색 경로에는 아니오를 추가합니다. 마이프로젝트에 추가하지 않으면 프로젝트가 구축되지 않았습니다.
Xcode 4.3.x에서 libxml2 추가 블록 인용
libxml2를 첨가하는 것은 엉덩이에 크고 뚱뚱하고 변덕스러운 고통입니다.프로젝트를 구축하는 데 너무 무리가 가기 전에 실행하십시오.
건배!.
대상설정
대상(프로젝트 아님)을 클릭하고 "Build Phases"(단계 구축)을 선택합니다."Link Binary With Libraries"(바이너리 링크 위드 라이브러리)라는 제목의 표시 삼각형을 클릭합니다.라이브러리를 추가하려면 "+"를 클릭합니다.목록 맨 아래로 스크롤하고 "libxml2.dylib"을 선택합니다.libxml2 라이브러리 2 프로젝트가 추가되었습니다. 하지만 잠시만요.
프로젝트설정
이제 프로젝트를 어디서 찾아야 하는지 세 번 더 말해야 합니다.
"Build Settings(빌드 설정) 탭"을 선택합니다."Linking(연결)" 섹션으로 스크롤합니다.프로젝트 열 아래에서 "기타 링커 플래그" 행을 두 번 클릭합니다.+를 누른 후 목록에 "-lxml2"를 추가합니다.
더 많이.
동일한 탭에서 아래로 스크롤하여 "경로 검색" 섹션을 수 있습니다."Framework Search Paths" 행의 프로젝트 열 아래에 "/usr/lib/libxml2.dylib"를 추가합니다.
"헤더 검색 경로"와 "사용자 헤더 검색 경로" 행에 "$(SDKROOT)/usr/include/libxml2"를 추가합니다.마지막 두 경우에는 경로가 Debug AND Release에 입력되었는지 확인합니다.
그런 다음 제품 메뉴에서 Clean을 선택합니다.
이것은 Xcode5에도 효과가 있습니다!감사해요!
libxml2.dylib을 frameworks 폴더 아래에 루트 바로 아래에 넣지 마십시오(왼쪽 위 파란색 아이콘).
그런 다음 프로젝트(TOP 왼쪽 파란색 아이콘)를 클릭하고 빌드 설정으로 이동한 후 검색 상자에 "헤더 검색 경로"를 입력한 다음 이 "$(SDKROOT)/usr/include/libxml2"를 추가합니다.
이 코드는 내 문제를 해결하는데 도움이 되기를 바랍니다.
@Aqib Mumtaz - 위의 Parris 노트에 있는 "Xcode 4.3 / 5 / 6에서 libxml2 추가하기"라는 제목의 지침에 따라 작동하게 되었습니다.프레임워크 검색 경로를 사용하는 단계가 작동하지 않아 컴파일러가 불만을 제기합니다.어쨌든 그 친구에게 큰 영광을!
저는 Xcode 6.2b3를 사용하고 있습니다.
사용하시는 Xcode 버전에 상관없이 버그가 있습니다.컴파일 오류가 항상 진짜라고 가정하지는 마세요.헤더 검색 경로를 따르지 않고 명확하게 나열된 항목을 찾을 수 없는 경우가 많습니다.더 나쁜 것은, 결과적으로 발생하는 오류들이 여러분을 다른 방향으로 가리키는 경향이 있기 때문에 여러분은 산만하게 빈둥거리며 많은 시간을 낭비합니다.그렇게 말하면...
이 단계부터 시작하여 아기 단계를 추천합니다.
- "벤치 테스트(Bench Test)"라는 단일 윈도우 Mac OS X Cocoa 프로젝트를 만듭니다.
- XpathQuery를 Finder에서 직접 프로젝트 소스 디렉토리에 추가합니다.
- 프로젝트 창의 빨간색 닫기 단추 아래에 있는 작은 폴더 아이콘을 클릭합니다.
- XpathQuery(포함된 경우 폴더)를 프로젝트 창의 디스플레이 왼쪽에 있는 프로젝트 자산으로 끕니다.
- /Applications/Xcode/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/lib/libxml2.2.dylib을 아래의 프로젝트 자산으로 끌어다 놓습니다.이렇게 하면 쉽게 "Build Phase"에 추가됩니다. -> "Link Binary With Libraries"(바이너리와 라이브러리 연결).
- 프로젝트 자산 열에서 왼쪽 상단의 "Bench Test(벤치 테스트)" 프로젝트 아이콘을 클릭합니다.
- 빌드 설정에서 "기타 링커 플래그"를 검색합니다.
- "벤치 테스트" 프로젝트 아이콘 열 아래의 "기타 링커 플래그"에 "-lxml2"(sans "")를 추가합니다.
- "빌드 설정"에서 "헤더 검색"을 검색합니다.
- "벤치 테스트" 프로젝트 아이콘 열 아래의 "헤더 검색 경로"에 "$(SDKROOT)/usr/include/libxml2"(sans ")를 추가합니다.
- "Bench Test" 프로젝트 아이콘 열 아래의 "User Header Search Paths"에 "$(SDKROOT)/usr/include/libxml2"(sans ")를 추가합니다.
주의:
- "헤더 검색 경로"와 "사용자 헤더 검색 경로" 모두에 해당 검색 경로를 추가하기 전까지는 제 것이 작동하지 않습니다.
- 파인더에서 libxml2.2.dylib로 이동하려면 Xcode 아이콘을 마우스 오른쪽 버튼으로 클릭하고 "패키지 연락처 표시"를 선택해야 합니다(편집: What hack..모든 쓰레기를 앱에 쑤셔 넣기)
- 링크된 libxml2.2.dylib을 변경할 준비를 합니다.Xcode 내부에 있는 Xcode는 Xcode가 알고 있는 것을 얻도록 하기 위해 의도적으로 사용되고 이론적으로는 테스트되었습니다.나중에 시스템에서 dylib을 사용할 수 있습니다(이 스레드에서 읽음).
- Xcode 6.2b3를 사용하고 있기 때문에 더 새로운 libxml2.2.dylib이 있을 수 있습니다.당신의 이름은 약간 다를 수 있습니다.폴더에서 "libxml"로 시작하여 "dylib"로 끝나는 것을 검색하면 됩니다.또한 "libxml2.dylib"과 같은 별칭도 있을 수 있습니다.별칭을 해결하는 것은 Xcode "bugs를 가질 수 있는 것" 방정식에 다른 변수를 추가하기 때문에 즉시 사용하지 마십시오.
- 제정신을 위해 외부 라이브러리의 별칭을 만들고 이름을 변경하여 어떤 라이브러리인지 표시한 후 프로젝트 파일과 동일한 수준으로 Finder에 보관합니다.위치를 변경하거나 이름을 변경하는 등의 경우 별칭이 Get Info에 포함되며, 이는 나중에 프로젝트를 컴파일하고 다시 연결하기 위한 원본 파일의 전체 경로입니다.(심링크가 너무 쉽게 끊어지고 Mac에서는 자연스럽지 않습니다.)
- 마지막으로, 그리고 매우 중요한 것은 XpathQuery를 다운로드하여 더 많은 장점을 얻을 수 있는 http://www.cocoawithlove.com/2008/10/using-libxml2-for-parsing-and-xpath.html 을 참조하십시오.
도움이 되기를 바랍니다.
만일 당신이 Veterans를 위해 무언가를 개발하고 있다면, iPhone/iPad 또는 Mac 앱을 사용하고, 의료 기록 시스템에 대한 SOAP 기반 인터페이스인 "MDWS" 또는 "VIA"라는 것을 사용하고 있다면...연락주세요
Xcode 8.0 + Unit Test Project에서 3단계로 풀었습니다.
1) 빌드 페이즈에 libxml 파일을 추가했습니다.이 링크를 따라갑니다.
2) 다른 링커 플래그를 다음과 같이 추가했습니다.-ObjC
(프로젝트 및 테스트 프로젝트 대상 모두 해당)
3) 머리글 검색 경로를 다음과 같이 설정합니다."${SDKROOT}/usr/include/libxml2"
(어느쪽이든 큰따옴표 잊지말아주세요) (프로젝트 및 테스트 프로젝트 대상 모두 해당)
그들 중 한 명이 문제를 해결할 것입니다.그렇지 않다면 위의 세 가지를 모두 적용해야 합니다.
제가 잘못 추가한 줄 알았는데 문제가 아크를 지원하지 않는다는 것을 깨달았으니 여기서 지원하는 것을 확인해 보세요, 라이프세이버 -> http://www.michaelbabiy.com/arc-compliant-gdataxml-library/
언급URL : https://stackoverflow.com/questions/1428847/libxml-tree-h-no-such-file-or-directory
'programing' 카테고리의 다른 글
키 스트로크로 잠시 루프를 죽이는 방법? (0) | 2023.09.11 |
---|---|
워드프레스에서 댓글 ID에서 게시물 ID를 얻을 수 있습니까? (0) | 2023.09.11 |
PHP in_array()에서 키를 얻는 방법은 무엇입니까? (0) | 2023.09.11 |
원격 분기가 지정된 원격 저장소에 있는지 확인하는 방법은 무엇입니까? (0) | 2023.09.11 |
Ctrl + D를 사용하여 종료하고 Ctrl + L을 사용하여 Powershell 콘솔의 cls로 이동합니다. (0) | 2023.09.11 |