我正在尝试编译使用.NET模块的Matlab(R2010b)应用程序,但我遇到了MCR和.NET模块之间不兼容的问题:
如果我从Matlab cli加载程序集一切正常,但是一旦我编译应用程序并从cmd.exe运行它,就会抛出一个错误,指出程序集是使用比当前加载的运行时更新的运行时构建的.我认为Matlab R2010b是用Visual Studio 2008构建的,并且相信这就是问题,但我想知道是否有人能解决这个问题?
我是Python的新手.我试图使用mlab包从Python内部运行MATLAB .我正在关注网站上的指南,我在Python命令行中输入了这个指南:
from mlab.releases import latest_release
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
cannot import name find_available_releases
Run Code Online (Sandbox Code Playgroud)
似乎matlabcom.py没有任何find_available_releases功能.
我可以知道是否有人知道如何解决这个问题?谢谢!
PS:我使用的是Windows 7,MATLAB 2012a和Python 2.7
我有.NET程序集文件,我需要它在MATLAB中工作.(该库是用C#创建的,我有相应的源代码)
在文档之后,我发现以下命令将在MATLAB中加载程序集并使其类可用于"在MATLAB中".但它似乎没有起作用.我用它来加载文件:
color = NET.addAssembly('c:\path\to\file\EvolutionMapsClassLib.dll');
Run Code Online (Sandbox Code Playgroud)
加载很好,我在工作区中看到一个1x1 .NET程序集对象.当我输入时,color我得到以下结果:
color =
NET.Assembly handle
Package: NET
Properties for class NET.Assembly:
AssemblyHandle
Classes
Structures
Enums
GenericTypes
Interfaces
Delegates
Run Code Online (Sandbox Code Playgroud)
所以显然它已经正确加载,而且打字color.Classes提供以下内容:
>> color.Classes
ans =
'EvolutionMaps.EvolutionMap'
'EvolutionMaps.EvolutionMap+EstimationResults'
'EvolutionMaps.PrincipalDirectionEvolutionMap'
'EvolutionMaps.CharacterDimensionsEstemator'
'EvolutionMaps.MapBlob'
'EvolutionMaps.MapsMetric'
'EvolutionMaps.MapsMetric+MapMinimalComparable'
'EvolutionMaps.MapsL2Distance'
'EvolutionMaps.DiagonalEvolutionMap'
'EvolutionMaps.EvolutionMapGenerator'
'EvolutionMaps.HeightEvolutionMap'
'EvolutionMaps.FullnessEvolutionMap'
'EvolutionMaps.YvalEvolutionMap'
'EvolutionMaps.ImageExtractor'
'EvolutionMaps.HorisontalProjectionDistance'
'EvolutionMaps.StrokeWidthEvolutionMap'
'EvolutionMaps.ConnectedComponentsFinder'
'EvolutionMaps.ColorMap'
'EvolutionMaps.ColorMap+GrayColorMap'
'EvolutionMaps.ColorMap+JetColorMap'
'EvolutionMaps.TransitionAvgEvolutionMap'
'EvolutionMaps.PrincipalProjectionEvolutionMap'
'EvolutionMaps.ConnectedComponent'
'EvolutionMaps.WidthEvolutionMap'
Run Code Online (Sandbox Code Playgroud)
这似乎运作良好,但根据在线帮助,为了与这些类进行交互,我需要知道方法和属性.
这是我遇到问题的地方,既不是properties也不行methods.我尝试了每个变体来获取属性或方法列表但我不断收到此错误:
>> properties color.EvolutionMaps.ColorMap
No properties for class color.EvolutionMaps.ColorMap or no class color.EvolutionMaps.ColorMap.
>> properties color.Classes.EvolutionMaps.ColorMap …Run Code Online (Sandbox Code Playgroud) 如果我在C#中有一个二维数组,我如何在Matlab中绘制这个数组的内容,作为二维图?我正在使用扩展方法,即
my2DArray.PlotInMatlab();
Run Code Online (Sandbox Code Playgroud) 如何让Matlab编译器运行得更快?制定合理的计划需要很长时间.
我目前 在mbuild -setup 中的c:\ Program Files(x86)\ Microsoft Visual Studio 9.0中使用 Microsoft Visual C++ 2008 SP1
我有一段用C++ 11编写的代码,我想将其编译为GNU/Linux的MATLAB MEX文件的一部分.
问题是Linux上的MATLAB仅支持GCC 4.3(及更早版本),并且不支持编译我的C++ 11代码所需的GCC 4.7.
有可能解决这个问题吗?
是否可以通过使用GCC 4.7编译一些目标文件并使用GCC 4.3将它们链接到MEX文件来解决这个问题?
提前致谢!
多年来,我一直在使用集成deploytool为我的同事创建易于分发的*.exe文件.我几天前安装了R2013b,我不能再用deploytool了.尝试打包时的日志文件给出了:
ant:
<ant>
<mkdir dir="C:\Users\xxxx\Matlab\programxy\test\for_redistribution" />
<mkdir dir="C:\Users\xxxx\Matlab\programxy\test\for_testing" />
</ant>
mcc -C -o test -W WinMain:test -T link:exe -d 'C:\Users\xxxx\Matlab\programxy\test\for_testing' -v 'C:\Users\xxxx\Matlab\programxy\test.m'
Test checkout of feature 'Compiler' failed.
mcc failed.
Run Code Online (Sandbox Code Playgroud)
这看起来像许可证问题,但许可证确实包括编译器.
license('test', 'compiler')
Run Code Online (Sandbox Code Playgroud)
给'1'.
R2013b有什么新东西我只是缺少了吗?我是否必须安装一些插件才能再次使用?
我有一些Matlab代码和一个GUI,我想制作一个独立的.exe,以便它可以在没有安装Matlab的计算机上使用.
我知道Matlab编译器以及如何使用它,但是这会创建一个仅在用户安装了MATLAB编译器运行时(MCR)时才有效的.exe.
我感兴趣的是,是否有任何方法可以创建一个仍然使用Matlab代码但不依赖于MCR的独立.exe.我想让它在你点击它时运行而不需要安装任何其他东西.
我知道C可以使用Matlab,有没有办法用C代码?任何开源的Matlab替代品怎么样呢?
作为最后的手段,如果我用另一种语言重写Matlab代码,你会推荐哪种语言?我在想C或Python.
谢谢.
嗨我目前正在使用MATLAB和C进行编码.我已经使用MATLAB Compiler(mcc)将MATLAB函数编译到C共享库中,并在C++程序中调用共享库中的函数.
在C++中调用时,是否可以声明全局变量在MATLAB函数之间共享数据?
确切地说,如果在matlab中有一个函数matlabA()和函数matlabB(),并使用mcc编译器编译成c ++共享库作为cppA()和cppB(),我可以通过将变量声明为全局in matlabA()而在它们之间共享一个变量matlabB()吗?
它似乎不起作用,那么我如何在函数之间共享变量?
谢谢!
function matlabA()
global foo
foo = 1;
end
function matlabB()
global foo
foo
end
Run Code Online (Sandbox Code Playgroud)
cppA();
cppB();
Run Code Online (Sandbox Code Playgroud) c++ matlab global-variables matlab-deployment matlab-compiler
我必须在Java中转换我的Matlab算法.为此,我使用matlab builder ja toolbox,在完成所有必要步骤后,构建失败并显示以下错误:
'javac'未被识别为内部或外部命令,可操作程序或批处理文件.错误:外壳到javac时出错(错误代码= 1).无法构建可执行文件.
java -version在matlab命令行中输入时,这就是我得到的:
Java 1.6.0_12-b04与Sun Microsystems Inc. Java HotSpot(TM)客户端VM混合模式
这意味着我应该在我的计算机上安装这个java编译器,然后只有matlab构建器ja才能工作.我是Java的新手,我不确定我应该寻找什么样的编译器.