初学者ILNumerics:在VS2012安装

编程入门 行业动态 更新时间:2024-10-28 00:17:36
本文介绍了初学者ILNumerics:在VS2012安装的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我在ILNUmerics很感兴趣,很想试试免费版本,但我有麻烦。

I am very much interested in ILNUmerics and would like to try the free version, but I am having troubles.

我已经开始使用一个控制台应用程序,并试图运行你好ilnumerics'console应用程序,但我注意到,VS无法找到MKL库。

I have started with a console application and was trying to run the 'hello ilnumerics'console application but I noticed that VS fails to find MKL libraries.

我在MacBook Pro上使用中旬通过在训练营的Windwos 8(VS2012 2010;它应该是有关);我已经安装了从项目的解决方案的NuGet包扩展名。在解决方案资源管理器中的引用,然后右键单击管理怒江获取包,在线弗朗/搜索发现,在各种版本ilnumerics。我选择了'ILNumerics并安装。我得到了'ILNumerics'和'ILNumerics.Native添加到我的项目。然后,我可以看到下在Solution Explorer中引用ILNumerics并同时获得两个新文件夹/ bin32中/和/ bin64适用/它们都包含一个名为两个DLL:libiomp5md.dll和mkl_custom.dll。我已经检查了'复制到输出继电器目录财产是否有更新的复制。

I am using VS2012 under Windwos 8 (through Bootcamp on a MacBook Pro mid 2010; should it be relevant); I have installed the NuGet Packages extension from the Project solution. Then right-click on references in the solution explorer, 'Manage Nu Get Packages', fron online/search found ilnumerics in various versions. I chose 'ILNumerics' and install. I got 'ILNumerics' and 'ILNumerics.Native' added to my project. Then I can see ILNumerics under 'References' in Solution Explorer and also get two new folders /bin32/ and /bin64/ they both contain two DLLs named: libiomp5md.dll and mkl_custom.dll. I have checked their 'Copy to Ouput Directory' property and they are all set to 'Copy if newer'.

显然mkl_custom找不到。我写了下面的代码,请从快速入门指南采取:

Apparently mkl_custom is not found. I write the following code, taken from the quickstart guide:

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

and I get this exception: An unhandled exception of type 'System.DllNotFoundException' occurred in ILNumerics.dll

其他信息:无法加载DLLmkl_custom:指定的模块不能被发现。 (异常来自HRESULT:0x8007007E)

Additional information: Unable to load DLL 'mkl_custom': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

如果我不调用linsolve ILArray的ToString方法不工作:如果我评论// ILArray结果= linsolve(A,B) ;

If I do not invoke linsolve the ToString method of ILArray does work: if I comment // ILArray Result = linsolve(A, B);

我得到印在屏幕上的两个矩阵

I get the two matrices printed on the screen.

我也尝试计算的行列式矩阵,得到了相同的异常:显然是任何时候我打电话mkl_custom VS不能够找到它。

I have also tried to compute the determinant of a matrix and got the same exception: apparently any time I call mkl_custom VS is not capable to find it.

任何帮助/提示吗?

此外,有必要通过的NuGet上的任何工程安装ILNumerics添加到该解决方案? ?是否有可能在本地安装一次所有,然后根据需要添加引用

Also, is it necessary to install ILNumerics through NuGet on any project added to the solution? Would it be possible to install it locally once for all and then add the reference if necessary?

推荐答案

有两种选择:

1)确保所有二进制文件入店像预期一样:ILNumerics使用值为anycpu目标,并通过添加bin32中/bin64适用目录到PATH envoronment变量选择的平台dependend子文件夹在启动时。可能有一些失败你的机器上?您可以通过放置正确的二进制文件(根据您的平台)直接进入手动输出路径,确保

1) Make sure, all binaries are accesible as intended: ILNumerics uses AnyCPU targets and chooses the platform dependend subfolder by adding the "bin32" / "bin64" directories to the PATH envoronment variable on startup. Possibly there is something failing on your machine? You can make sure by placing the correct binaries (depending on your platform) directly into the output path manually.

2)如果错误仍然存​​在:mkl_custom.dll取决于一些其他DLL本身。酮(libiomp5md.dll)与ILNumerics的NuGet包递送。其他预计将您的系统上存在:KERNEL32.DLL和MSVCR110.DLL。请确保你拥有这些!如果内核DLL不见了 - >称之为奇迹,并重新安装系统。如果msvcr110缺失 - >去这里并安装。在的Visual C ++可再发行的Visual Studio 2012

2) In case the error persists: mkl_custom.dll depends on some other dlls itself. One (libiomp5md.dll) is delivered with the ILNumerics nuget package. Others are expected to exist on your system: KERNEL32.DLL and MSVCR110.DLL. Make sure, you have these! If the kernel dll was missing -> call it a miracle and reinstall your system. If the msvcr110 is missing -> go here and install the "Visual C++ Redistributable for Visual Studio 2012".

在情况下,问题仍然存在,则可以提交对ILNumerics的错误追踪系统,因为在运行时应该有,因为你写你正在使用VS2012。 。也许这是一个版本控制问题,但

In case the problem persists, you may file a bug on the ILNumerics bugtracker, because, the runtime should be there, as you wrote you are using VS2012. Possibly it is a versioning problem though.

编辑:由于4.0版ILNumerics不bin32中/ bin64适用/子再部署本机二进制代码,但是安装所有本地依赖系统范围进GAC和System32下/ WOW文件夹。旧的计划仍然会工作(与旧项目兼容)虽然。但它没有必要再处理为ILNumerics明确任何依赖关系。他们应该只是在运行时被发现。

Since version 4.0 ILNumerics does not deploy the native binaries in bin32/ bin64/ subfolder anymore but installs all native dependencies systemwide into the GAC and System32/WOW folders. The old scheme will still work (for compatibility with old projects) though. But it is not necessary anymore to deal with any dependancies for ILNumerics explicitly. They should simply be found at runtime.

更多推荐

初学者ILNumerics:在VS2012安装

本文发布于:2023-11-13 01:25:33,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1583030.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:初学者   ILNumerics

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!