3
PS3에 YDL 6.1과 SDK 3.1을 설치했는데 예제를 컴파일하고 실행할 수 있기 때문에 모든 것이 잘 작동하는 것 같습니다. 그러나, 나는 내 자신의 프로그램을 작성하는 데 몇 가지 문제를 겪었다. 나는 실패의 원인을 찾아내는 것처럼 보이는 작은 테스트 케이스를 만들었습니다.YDL 6.1 및 Cell SDK 3.1을 사용하는 PS3의 math.h에서 'sqrt'에 대한 정의되지 않은 참조가 있습니까?
// mathtest.c
#include <stdio.h>
#include <math.h>
int main()
{
double param, result;
param = 1024.0;
result = sqrt (param);
printf ("sqrt(%lf) = %lf\n", param, result);
return 0;
}
그때 나는 이미 math.h이 시스템에 있는지 확인하기 위해 검사
/tmp/ccFqwJdG.o:(.text+0x20): undefined reference to `sqrt'
collect2: ld returned 1 exit status
다음과 같은 오류를 얻을
ppu-gcc mathtest.c
을 실행 나는 다음과 같은 코드가 있습니다 sqrt를 정의합니다. 나는 또한 이것을 실행하려고 시도했다 :
ppu-gcc -I/usr/includes/ mathtest.c
그러나 같은 오류가 발생한다. 나는 혼란 스럽다.
그래, 고칠 것 같습니다. 어떤 플랫폼 (리눅스)이 수학과 연결을 필요로하는지, 다른 것들은 (OS X)을 연결하지 않아도되는 이상한 점은 os x가 링크를 필요로하지 않는 이유는 여러 소스 (libc vs apple libs, gcc , 등). –