zoukankan      html  css  js  c++  java
  • php调用matlab

    matlab太大了,想导出一个可执行的文件,exe或jar或dll吧,然后用程序调用。

    我导出的exe,用php调用

    安装matlab,安装vc6编译器。没用过C++,下了个VC6.0安装了,系统就有vc6编译器了。

    Matlab命令行窗口:

    >> mex -setup
    Please choose your compiler for building external interface (MEX) files: 
     
    Would you like mex to locate installed compilers [y]/n? y
     
    Select a compiler: 
    [1] Lcc-win32 C 2.4.1 in C:\matlab\sys\lcc 
    [2] Microsoft Visual C++ 6.0 in C:\Program Files\Microsoft Visual Studio 
     
    [0] None 
     
    Compiler: 2
     
    Please verify your choices: 
     
    Compiler: Microsoft Visual C++ 6.0 
    Location: C:\Program Files\Microsoft Visual Studio 
     
    Are these correct [y]/n? y
     
    Trying to update options file: C:\Documents and Settings\cnic\Application Data\MathWorks\MATLAB\R2009a\mexopts.bat 
    From template:              C:\matlab\bin\win32\mexopts\msvc60opts.bat 
     
    Done . . . 
     
    ************************************************************************** 
      Warning: The MATLAB C and Fortran API has changed to support MATLAB 
               variables with more than 2^32-1 elements.  In the near future 
               you will be required to update your code to utilize the new 
               API. You can find more information about this at: 
               http://www.mathworks.com/support/solutions/data/1-5C27B9.html?solution=1-5C27B9 
               Building with the -largeArrayDims option enables the new API. 
    ************************************************************************** 
     
    >> mbuild -setup
    Please choose your compiler for building standalone MATLAB applications: 
     
    Would you like mbuild to locate installed compilers [y]/n? y
     
    Select a compiler: 
    [1] Lcc-win32 C 2.4.1 in C:\matlab\sys\lcc 
    [2] Microsoft Visual C++ 6.0 in C:\Program Files\Microsoft Visual Studio 
     
    [0] None 
     
    Compiler: 2
     
    Please verify your choices: 
     
    Compiler: Microsoft Visual C++ 6.0 
    Location: C:\Program Files\Microsoft Visual Studio 
     
    Are these correct [y]/n? y
     
    Trying to update options file: C:\Documents and Settings\cnic\Application Data\MathWorks\MATLAB\R2009a\compopts.bat 
    From template:              C:\matlab\bin\win32\mbuildopts\msvc60compp.bat 
     
    Done . . . 
    

    mex -setup

    mbuild -setup

    都选VC6

    M文件:funBt_fun.m

    随便一点了就

    function c= funBt_fun(input)
    c=input+1;
    

    Matlab命令窗口:

    cd XXX进入M文件所在路径

    mcc -m funBt_fun.m          进行编译

    生成funBt_fun.exe

    PHP调用:

    $commandBt="E:/funBt_fun.exe Fringillidae";
    system($commandBt);

    注:不要用Matlab自带的编译器啊,用VC6

    哥用自带的,也可以导出exe,奇怪的是在DOS下可执行,在PHP下就调用不了。没错误,没反应,调试都没法调,苦死。。

    dll C++的兄弟请参考http://developer.51cto.com/art/200909/150944.htm

    jar包的话,会用java的应该都没问题吧

  • 相关阅读:
    Asp.net mvc项目分页功能
    asp.net mvc邮箱激活
    4. Spring 如何通过 XML 文件配置Bean,以及如何获取Bean
    3. Spring 核心之 IOC(控制反转) & DI(依赖注入)
    2. Spring 的 HelloWorld
    1. Spring 简介以及关于 Eclipse 的 Spring Tool Suite 插件安装
    早睡早起身体好,早睡早起有力量,晚安~~
    睡前写几句,缓解一下刷题的心情。。。
    ACM 杭电HDU 2084 数塔 [解题报告]
    ACM HDU 2041--超级楼梯题解
  • 原文地址:https://www.cnblogs.com/frostbelt/p/2361097.html
Copyright © 2011-2022 走看看