إشارة غير محددة إلى "sqrt" من Math.H على PS3 مع YDL 6.1 و Cell SDK 3.1؟

StackOverflow https://stackoverflow.com/questions/612377

  •  03-07-2019
  •  | 
  •  

سؤال

لدي PS3 قمت بتثبيته YDL 6.1 و SDK 3.1 ويبدو أن كل شيء يعمل بشكل جيد ، حيث يمكنني تجميع الأمثلة وتشغيلها. ومع ذلك ، لقد واجهت بعض المشكلات في كتابة برامج خاصة بي. لقد قمت بإنشاء حالة اختبار صغيرة يبدو أنها تحدد سبب الفشل. لدي الرمز التالي:

// 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;
}

عندما أركض بعد ذلك

ppu-gcc mathtest.c

أحصل على الخطأ التالية

/tmp/ccFqwJdG.o:(.text+0x20): undefined reference to `sqrt'
collect2: ld returned 1 exit status

لقد راجعت بالفعل للتأكد من وجود Math.h على هذا النظام ويحدد SQRT. لقد حاولت بالفعل تشغيل هذا:

ppu-gcc -I/usr/includes/ mathtest.c

لكنه يؤدي إلى نفس الخطأ. أنا مرتبك ، أي شخص لديه أي أفكار؟

هل كانت مفيدة؟

المحلول

لقد حصلت أحيانًا على أخطاء مماثلة على Linux ، باستخدام -LM كمعلمة GCC ساعد هناك. ربما يفعل هنا أيضا. تخبر المعلمة الرابط بتضمين مكتبة الرياضيات أيضًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top