5

ILNUmerics にとても興味があり、無料版を試してみたいのですが、うまくいきません。

コンソール アプリケーションから始めて、'hello ilnumerics' コンソール アプリケーションを実行しようとしましたが、VS が MKL ライブラリを見つけられないことに気付きました。

Windwos 8 で VS2012 を使用しています (2010 年半ばの MacBook Pro の Bootcamp を介して; 関連する必要があります)。プロジェクト ソリューションから NuGet パッケージ拡張機能をインストールしました。次に、ソリューション エクスプローラーの [Manage Nu Get Packages] で参照を右クリックし、オンラインで検索すると、さまざまなバージョンで ilnumerics が見つかりました。「ILNumerics」を選択してインストールします。プロジェクトに「ILNumerics」と「ILNumerics.Native」を追加しました。次に、ソリューション エクスプローラーの [参照] の下に ILNumerics が表示され、2 つの新しいフォルダー /bin32/ および /bin64/ も取得されます。これらのフォルダーには、libiomp5md.dll および mkl_custom.dll という名前の 2 つの DLL が含まれています。「出力ディレクトリにコピー」プロパティを確認しましたが、すべて「新しい場合はコピー」に設定されています。

どうやら mkl_custom が見つかりません。クイックスタート ガイドから抜粋した次のコードを記述します。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ILNumerics;

namespace ConsoleApplication3
{

  class Program  : ILMath
{
    static void Main(string[] args)
    {

        ILArray<double> A = array<double>
            (new double[] { 1,1,1,1,1,2,3,4,1,3,6,10,1,4,10,20} ,4, 4);
        ILArray<double> B = counter(4, 2);

        ILArray<double> Result = linsolve(A, B);
        Console.Out.WriteLine("A: " + Environment.NewLine +
                A.ToString());

            Console.Out.WriteLine("B: " + Environment.NewLine + B.ToString());

            Console.ReadKey();
        }
    }
}

そして、私はこの例外を受け取ります: タイプ 'System.DllNotFoundException' の未処理の例外が ILNumerics.dll で発生しました

追加情報: DLL 'mkl_custom' を読み込めません: 指定されたモジュールが見つかりませんでした。(HRESULT からの例外: 0x8007007E)

linsolve を呼び出さない場合、ILArray の ToString メソッドは機能します。 // ILArray Result = linsolve(A, B); とコメントすると、

画面に 2 つの行列が表示されます。

また、マトリックスの行列式を計算しようとしましたが、同じ例外が発生しました。明らかに、mkl_custom VS を呼び出すたびに、それを見つけることができません。

ヘルプ/ヒントはありますか?

また、ソリューションに追加されたプロジェクトに NuGet を介して ILNumerics をインストールする必要がありますか? 一度ローカルにインストールして、必要に応じて参照を追加することは可能でしょうか?

4

3 に答える 3

0

私の場合、「Visual Studio 2012 用の Visual C++ 再頒布可能パッケージ」をインストールするのに役立ちましたが、対応する「Visual Studio 2010 用の Visual C++ 再頒布可能パッケージ」がインストールされた Visual Studio 2010 を使用しています。mkl_custom.dll が必要ない限り、これは正常に機能しました。しかし、私の同僚は、2012 Redistributable がインストールされていなければ、この問題は発生しません。

于 2014-01-25T10:23:25.823 に答える