zoukankan      html  css  js  c++  java
  • linux中Matlab编译m文件

    一、将m文件编译生成可执行文件

    1、依赖于gcc编译器,保证有编译器,进入matlab【输入matlab】输入【只需要配一次】

    >> mex -setup
    MEX 配置为使用 'gcc' 以进行 C 语言编译。
    警告: MATLAB C 和 Fortran API 已更改,现可支持
    包含 2^32-1 个以上元素的 MATLAB 变量。不久以后,
    您需要更新代码以利用
    新的 API。您可以在以下网址找到更多的相关信息:n http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html。

    要选择不同的语言,请从以下选项中执行一种命令:
    mex -setup C++
    mex -setup FORTRAN

    输入

    >> mex -setup C++ 

    2、编译

    mcc -mv my_fun_cal_safeguard_rate.m

    3、生成可执行文件

    my_fun_cal_safeguard_rate

    run_my_fun_cal_safeguard_rate.sh

    4、配置了MCR

    配置MCR:https://www.cnblogs.com/judes/p/12176751.html

    而这个run_xxx.sh是自动加入MCR路径的脚本,我一直没使用成功过,如果MCR配置好了,可直接./my_fun_cal_safeguard_rate

    二、生成动态库

    1、依赖于gcc编译器,保证有编译器,进入matlab输入【只需要配一次】

    >> mex -setup 
    MEX 配置为使用 'gcc' 以进行 C 语言编译。
    警告: MATLAB C 和 Fortran API 已更改,现可支持
    包含 2^32-1 个以上元素的 MATLAB 变量。不久以后,
    您需要更新代码以利用
    新的 API。您可以在以下网址找到更多的相关信息:n http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html。

    要选择不同的语言,请从以下选项中执行一种命令:
    mex -setup C++ 
    mex -setup FORTRAN

    输入

    >> mex -setup C++ 

    2、将m文件编译成动态库

    mcc -W cpplib:libmy_fun_cal_safeguard -T link:lib my_fun_cal_safeguard_rate.m 

    至于如何使用还在研究中

  • 相关阅读:
    linux 第五天
    linux 第四天
    二进制 位运算
    二进制
    java 方法的调用过程
    Linux 第三天
    Linux 第二天
    Linux
    学习了半个多月的TankGame
    学习第一天(spring)
  • 原文地址:https://www.cnblogs.com/judes/p/12177044.html
Copyright © 2011-2022 走看看