문제

Snow Leopard로 업그레이드 한 후 컴퓨터에서 Eclipse CDT 프로젝트를 더 이상 실행할 수 없습니다. 빌드 프로세스는 오류없이 완료되지만 Eclipse는 생성 된 이진 파일을 인식하지 못합니다. 이진 파일을 가리키면 구성 실행 .. 대화 상자, 프로젝트에서 바이너리를 찾을 수 없습니다. 터미널에서 파일을 실행하는 것은 잘 작동합니다.

에 따르면 게시물 Eclipse Forum에서 이것은 Mach-O Parser가 64 비트 이진을 인식하지 못하는 문제 일 수 있습니다. Snow Leopard에서 C ++ 프로젝트를 실행/디버그 할 수 있도록 문제에 대한 솔루션 또는 해결 방법이 무엇인지 아는 사람이 있습니까?

업데이트되었습니다

제안 된 해결책 셰인, 생성 된 이진을 인식 할 수있게하더라도 또 다른 문제가 발생합니다. 스노우 레오파드의 시스템 라이브러리는 모두 64 비트이므로 더 이상 생성 된 코드를 연결할 수 없습니다. -arch i386 이러한 라이브러리와 함께, 따라서 아직 실행 가능한 솔루션은 아닙니다.

도움이 되었습니까?

해결책

참조 한 게시물에 따라 프로젝트의 컴파일러 및 링커 설정에 -arch i386을 추가해야합니다. 그런 다음 프로젝트를 재건하면 CDT가 집행관을 집어 올립니다.

프로젝트 속성 -> C/C ++ 빌드 -> 설정. 그런 다음 컴파일러와 링커 기타 섹션에서 다른 플래그에 플래그를 추가합니다.

건배,

다른 팁

Eclipse의 이진 파서가 새로운 64 비트 Mach-O 이진 형식을 인식하도록 업데이트되지 않았습니다.https://bugs.eclipse.org/bugs/show_bug.cgi?id=270790), 현재 유일한 해결 방법은 32 비트 모드로 코드를 컴파일하는 것 같습니다.

결과적으로 대부분의 시스템 라이브러리에 C/C ++ 프로젝트를 모든 시스템 라이브러리에 연결할 수는 없습니다. 대부분은 이미 64 비트로 컴파일되었으므로 시스템 라이브러리.

현재 내 솔루션은 Xcode로 임시 전환입니다.

Gmatt,

64 개의 바이너리는 새로운 건축에 새로운 범용 레지스터도 가지고 있기 때문에 다릅니다. 아키텍처에는 이진에서 볼 수있는 opcode에 영향을 줄 수있는 더 많은 차이가 있습니다.

건배, 셰인

새로운 마하 64 비트 이진 파서가 마침내 출시되었습니다.

방금 Eclipse에서 업데이트를했고 프로젝트 속성 아래에서 새로운 바이너리 파서를 선택했습니다. 나는 마침내 일식 내에서 C ++ 바이너리를 실행할 수 있지만, 어떤 이유로 든 여전히 디버깅에 어려움을 겪고 있습니다.

이전에 알고 있듯이 Binary Parser는 위에서 말한 것처럼 [프로젝트 속성 -> C/C ++ 빌드 -> 설정]에 위치하고 있습니다. 그러나 나는 그것이 바뀌 었다고 생각합니다.

Eclipse-> Environment-> C/C ++ -> 새로운 C/C ++ 프로젝트 마법사 -> MakeFile Project-> Binary Parsers-> Mach -O Parser (감가 상각)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top