Conference Room SAD
[thread display] [new arrival display] [word search] [past log] [管理用]

Subject Re: SAD on cygwin
Date: 2012/05/30(Wed) 11:52:12
ContributorAkio Morita

>   32bitのWin XP上に最新のcygwinを入れ、SADのmain trunkをコンパイルしようとしましたが、
> やはりうまくいきませんでした。最後の部分をコピーします。何かアドバイスなどありましたら
> お願いいたします。お手数おかけいたしまして申し訳ございません。sad.conf は最初のままで
> 全く編集していません。
>  (関係ないですが、ちょっと前のcygwinはemacsがキー入力を完全に受け付けなくなるバグが
> あったようで……1時間くらいはまりました。数日後にcygwin入れ直して解決……T_T)
>
(snip)
> libsad.a(eigs33.o): In function `eigs33':
> /home/kentaro/oldsad/src/eigs33.f:54: undefined reference to `_hypotl'
> /home/kentaro/oldsad/src/eigs33.f:89: undefined reference to `_hypotl'
> /home/kentaro/oldsad/src/eigs33.f:121: undefined reference to `_hypotl'
> /home/kentaro/oldsad/src/eigs33.f:123: undefined reference to `_hypotl'
> /home/kentaro/oldsad/src/eigs33.f:143: undefined reference to `_hypotl'
> collect2: ld はステータス 1 で終了しました
>
cygwinの libmに long double(拡張精度)の hypotが実装されていない
hypotlは、ISO C99規格に含まれる long double型に対するユークリッドノルム関数(hypot)です
hypot(x, y) == sqrt(x*x + y*y) (ただし、演算結果が有限な場合、計算中に overflow/underflowは発生しない)


- 関連一覧ツリー (Click ▼ to display all articles in a thread.)