YDL 6.1およびCell SDK 3.1を使用するPS3のmath.hからの「sqrt」への未定義の参照

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

  •  03-07-2019
  •  | 
  •  

質問

YDL 6.1とSDK 3.1をインストールしたPS3があり、サンプルをコンパイルして実行できるため、すべて正常に動作しているようです。しかし、私は自分のプログラムを書く際にいくつかの問題に遭遇しました。失敗の原因を特定するように思われる小さなテストケースを作成しました。次のコードがあります:

// 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で-ccをgccパラメータとして使用すると、同様のエラーが発生することがありました。おそらくここでもそうでしょう。このパラメーターは、数学ライブラリも含めるようリンカーに指示します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top