2013-04-12 5 views
1

누구나 Mac OS 10.8에 papi (성능 API) 버전 5.1.0을 설치하려고 했습니까? make 명령에서 다음 오류가 발생합니다.성능 API (Mac) 10.8

zero_attach.c: In function ‘main’: 
zero_attach.c:84: error: ‘PTRACE_ATTACH’ undeclared (first use in this function) 
zero_attach.c:84: error: (Each undeclared identifier is reported only once 
zero_attach.c:84: error: for each function it appears in.) 
zero_attach.c:84: warning: passing argument 4 of ‘ptrace’ makes integer from pointer without a cast 
zero_attach.c:117: error: ‘PTRACE_CONT’ undeclared (first use in this function) 

INSTALL.txt는 Mac OS에서 아무 것도 말하지 않습니다. 그냥 아무런 프로 시저를 설치하지 않을 수 있습니다 그래서 내가 언급 한 표준 절차를 시도했다.

papi -> platform supported의 메인 페이지에서, mac os에 대해 아무 것도 말하지 않습니다.

일부 드라이버를 설치해야합니까? 어떤 도움이 될 것입니다 ..

답변

2

방금 ​​OS X v 10.9.1에 PAPI (5.3.0)의 최신 버전을 설치했습니다. 설치 파일의 지침에 따라 트릭을 수행했습니다!

wget http://icl.cs.utk.edu/projects/papi/downloads/papi-5.3.0.tar.gz 
tar -xvf papi-5.3.0.tar.gz 
cd papi-5.3.0/src 
./configure 
make 

내가 정의되지 않은 malloc.h로했다 발생한 유일한 문제는,이 쉽게 하나가

touch malloc.h 

와 더미 malloc.h 스텁을 만들거나에 좋은 malloc.h를 복사하여 고정 입니다

: src 디렉토리

다음
cp /System/Library/Frameworks/Kernel.framework/Versions/A/Headers/sys/malloc.h . 

당신과 함께 괜찮을

행복한 성과 집계!

p.s. gcc-4.7.3 (homebrew와 함께 설치)으로이 작업을 수행했습니다.

+0

나는 당신의 방식대로했다. 나는 inc와 lib 경로를 makefile에 넣었다. 하지만 내 프로그램을 실행하면 런타임 오류 dyld가 발생합니다. 라이브러리가로드되지 않았습니다. libpapi.dylib – yidiyidawu

+0

@yidiyidawu makefile이 OS X에 필요한 .ddld 버전을 빌드하지 않았으므로 예상되는 것입니다. 정적 아카이브 libpapi.a와 연결합니다. 그럼에도 불구하고 OS X은 카운터에 대한 액세스를 제공하지 않기 때문에 실제 측정을 수행 할 수 없었기 때문에 PAPI init는 항상 실패합니다. – PJK

+0

"오류 : 제로 카운터를 사용할 수 있습니다! PAPI가 마음에 들지 않습니다!" – kboom