• 締切済み

CLAPACKの使用時にエラーが表示される件について

こんにちは。 現在、特異値分解を行いたくて、数値計算ライブラリの使用を考えています。PCは、Windows環境でVisual C++を使用しています。 CLAPACKというライブラリがあることを知り、早速インストールして、インクルードファイルとlibファイルにパスを通し、サンプルプログラムをいざビルドしてみたところ、 「未解決の外部シンボル_ftol2_sse関数が_dlamc1_で参照されました」 「外部シンボル_ftol2_sseは未解決です」 というエラーがでてきて、ビルドできませんでした。 プログラムに詳しくないため、このエラーの意味がわかりません。 もし、CLAPACKをインストールして、同じようなエラーがでてきた経験がある方いらっしゃいましたら、その解決法を教えていただけませんか? よろしくお願いします。

みんなの回答

回答No.1

おはようございます. 見たところ,CLAPACK固有の問題ではありませんね. エラーの意味はCLAPACKの関数であるdlamc1_()が, ftol2_sse()という関数を呼ぼうとしたが,その関数があなたのコードにも, リンクされたライブラリにも見当たらなかった,という意味です. ここで,dlamc1()は倍精度実数型のマシンパラメター(数値精度の限界など)を決定する関数です. SSE命令を使った場合のTOLの値を取得しようとしたのでしょう. 下記の参考URLによれば,Visual Studioのあるバージョンでftol2_sseのエントリポイントが変更されたとあります. CLAPACKのライブラリを自力で再構築するか, あなたのコードでリンクするライブラリが足りているかチェックすべきでしょう.

参考URL:
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=107716
全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CLapack C++

    現在、C言語の中で疑似逆行列を用いた最小2乗法によって データの処理を行いたいと考えています。 そのためにCLapackという線形演算ライブラリを visual studio 6.0に組み込みたいのですがうまくいきません。 研究で、ADボードやロボットマニピュレータを使うために  Win32 Application で自分でプログラムを書いています。 Win32 Console Application にCLapackを組み込む事は、 http://www.alab.t.u-tokyo.ac.jp/~bond/doc/clapack.html​ を見てうまくいったのですが、Win32 Applicationで組み込もうとすると、以下のようなエラーがでます。 リンク中... LINK : warning LNK4049: ローカル定義のシンボル "_free" がインポートされました LINK : warning LNK4049: ローカル定義のシンボル "_fprintf" がインポートされました LINK : warning LNK4049: ローカル定義のシンボル "__iob" がインポートされました LINK : warning LNK4049: ローカル定義のシンボル "_malloc" がインポートされました LINK : warning LNK4049: ローカル定義のシンボル "_exit" がインポートされました clapack.lib(dlamch.obj) : error LNK2001: 外部シンボル "__imp__printf" は未解決です clapack.lib(xerbla.obj) : error LNK2001: 外部シンボル "__imp__printf" は未解決です Debug/test.exe : fatal error LNK1120: 外部参照 1 が未解決です。 link.exe の実行エラー プログラムに関する知識が乏しいため、解決できません。 またmath.hをインクルードすると大量のエラーがでます。 CLapackについて詳しい方がいらっしゃいましたら、 どうか教えていただけないでしょうか? よろしくお願いします。

  • IEコンポーネント使用でリンクエラー

    Windows XP SP2 + VC++6.0 + IE6 SP2 で IEコンポーネントを使用するプログラムを作成しています。 MFC は使用していません。 このプロジェクトをビルドするとリンクエラーが発生します。 *****.obj : error LNK2001: 外部シンボル "_IID_IHTMLFormElement2" は未解決です *****.obj : error LNK2001: 外部シンボル "_IID_IHTMLInputElement" は未解決です 「mshtml.libをリンクすべし」と言っているサイトがあったのですが mshtml.lib なるファイルが私の環境にはありません。 どこかで入手できるものなのでしょうか。探しましたがわかりませんでした。 また、「mshtml.tlbをインポートすべし」というサイトもあったのですが インポートしても同じリンクエラーが発生します。 ちなみに使用している各ファイルの日付は以下の通りです。 MsHTML.h 2005/04/14 mshtml.tlb 2004/08/05 どうかアドバイスをお願いいたします。

  • リンク時エラー

    DirectShowのSampleGrabberを使ったプログラムをborland C++ コンパイラでコンパイルしようとしたときにエラーが出てしまいます。 bcc32 -I"C:\Borland\Bcc55\Include" -L"C:\Borland\Bcc55\Lib" -I"c:\Program Files\Microsoft Platform SDK\Include" -L"c:\Program Files\Microsoft Platform SDK\Lib" -L"C:\Program Files\Microsoft DirectX 9.0 SDK (October 2005)\Lib" -------------------------------------------------- Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland Error: 外部シンボル '_CLSID_SampleGrabber' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAI L.OBJ が参照) Error: 外部シンボル '_IID_ISampleGrabber' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL .OBJ が参照) Error: 外部シンボル '_MEDIATYPE_Video' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL.OB J が参照) Error: 外部シンボル '_MEDIASUBTYPE_RGB24' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL .OBJ が参照) Error: 外部シンボル '_FORMAT_VideoInfo' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL.O BJ が参照) DierctShowは最近Platform SDKに統合されたらしいのでPlatform SDKからインクルードしています。 ご存知の方がいらっしゃいましたらご教授お願い致します。

  • OpenCVのリンクエラー

    Windows XP, Visual C++ 6.0の環境でOpenCVを始めました。OpenCVに含まれるサンプルのビルドにおいて「kalman.obj : error LNK2001: 外部シンボル "_cvDestroyWindow" は未解決です」等のエラーが発生します。初歩的な問題で申し訳ありませんが解決法を教えて下さい。尚、Visual C++のツール->オプション->ディレクトリには以下を加えております。 インクルード C:\Program Files\OpenCV\cv\include C:\Program Files\OpenCV\cxcore\include C:\Program Files\OpenCV\CVAUX\INCLUDE C:\Program Files\OpenCV\OTHERLIBS\CVCAM\INCLUDE C:\Program Files\OpenCV\otherlibs\highgui ライブラリ C:\Program Files\OpenCV\lib C:\Program Files\OpenCV\otherlibs\highgui

  • OpenNIの動作について

    OpenNIをvisual studio2008で動作させようとしています。 そこで以下のメッセージが出て動作しません。インクルードファイルのリンクはしたつもりなのですが、参照できていないのでしょうか。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceCreateStream" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniFrameRelease" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceIsPropertySupported" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamGetSensorInfo" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceClose" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniShutdown" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniGetExtendedError" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniWaitForAnyStream" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniInitialize" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamStart" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceGetInfo" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamIsPropertySupported" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceOpen" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceGetSensorInfo" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamDestroy" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamStop" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniStreamReadFrame" は未解決です。 1>main.obj : error LNK2001: 外部シンボル "__imp__oniDeviceIsCommandSupported" は未解決です。 1>C:\Users\sakata\Documents\Visual Studio 2008\Projects\openNI_test\Release\openNI_test.exe : fatal error LNK1120: 外部参照 18 が未解決です。 以上です。 追加のインクルードディレクトリには C:\Program Files\OpenNI2\Include\Win32 C:\Program Files\OpenNI2\Include 追加のライブラリディレクトリには "C:\Program Files\OpenNI2\Lib" を追加しました。 環境変数はOpenNIをインストールしたときに勝手に追加されたので間違っていないと思います。 環境は以下です。 OS:Windows7 32bit OpenNIはOpenNI2を入れています。(2013年6月現在で最新?) もちろん32bit版です。 動作カメラはXtionです。ドライバインストール済みで、サンプルプログラムの.exeファイルでの動作は確認しています。 他の質問でx64でビルドすれば通るなどと書いてありますが、それは64bit版OSの話ですよね? 原因わかる方、回答お願いします。

  • 外部クラスライブラリをインストールして使用する方法

    外部クラスライブラリをインストールして使用するためには・・・ C:\Program Files\Java\jdk1.6.0_37\jre\lib\ext と C:\Program Files\Java\jre6\lib\ext にjarファイルを置かないといけませんよね? それ以外にもなにか必要ですか? 教材を見ながらJavaの勉強をしているのですが 外部クラスライブラリを利用するプログラムをコンパイルしようとすると c:\JavaGOGO\Sample3-1>javac FusenExec.java エラー:C:\Program Files\Java\jdk1.6.0_37\jre\lib\ext\dodai.jar の読み込みエラー です。cannot read zip file FusenExec.java:3: シンボルを見つけられません。 シンボル: クラス Dodai 場所 : FusenExec の クラス Dodai fusen; ^ FusenExec.java:4: シンボルを見つけられません。 シンボル: クラス Dodai 場所 : FusenExec の クラス fusen = new Dodai(); ^ エラー 3 個 このようなメッセージが表示されエラーが起きます。 使おうとしているのはDodaiライブラリのクラスなのですが なにが原因でコンパイルエラーが起きるのでしょうか(>_<)

    • ベストアンサー
    • Java
  • Win32APIについて

    #include <windows.h> int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR pCmdLine, int showCmd) { return 0; } のようなプログラムをビルドすると LIBCD.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です Debug/Cpp1.exe : fatal error LNK1120: 外部参照 1 が未解決です。 が出ます。 ちなみにコンパイル環境はMicrosoft Visual C++ 5.0です。

  • ビルドする時のエラー。(初心者です)

    リンク中... LIBCD.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です Debug/MousMov.exe : fatal error LNK1120: 外部参照 1 が未解決です。 link.exe の実行エラー というエラーがでます。 何がいけなくて対処方法はどうすればいいのでしょう。 初めてビルドするときは、エラーは何も出ないのですがもう一回するとこのエラーがでます。どうすればいいんですか?よろしくお願いします。

  • VS2013でrangecheckfailure

    visual studio 2012まではビルドできていたプログラムを2013にアップグレードしたところ、 「error LNK2001: 外部シンボル "__report_rangecheckfailure" は未解決です。」 というエラーが出てしまってビルドできなくなりました。 原因はなんでしょうか?

  • DirectX8でコンパイルエラー

    DirectX8実践プログラミングという本についてくるサンプルプログラムを コンパイルしようとしているのですが、 sprite.obj : error LNK2001: 外部シンボル "_D3DXCreateSprite@8" は未解決です sprite.obj : error LNK2001: 外部シンボル "_D3DXCreateTextureFromFileA@12" は未解決です sprite.obj : error LNK2001: 外部シンボル "_Direct3DCreate8@4" は未解決です .\Debug/spriteanimate.exe : fatal error LNK1120: 外部参照 3 が未解決です。 link.exe の実行エラー となってしまいます。DirectXを使っての勉強をはじめたばかりなのですが いきなりつまってしまいました。 おそらくライブラリが見つからないのかと思うのですが ライブラリのディレクトリ設定でC:\mssdk\libも追加されていました。 DirectX8SDKについてくるサンプルはコンパイル出来るのですが どういう理由が考えられるでしょうか?