0

codegen在 MATLAB R2016b 中使用来生成一个 .dll 文件,如下所示:

codegen -config:dll ex_fun.m -args {0,0,0,0,0,0}

我尝试使用 Visual Studio 2015 将 dll 文件作为参考包含在内,但没有任何效果,我也无法将 .lib 文件用作链接器。

奇怪的是,我可以gcc通过编译调用 C 函数的 .c 脚本以及输出 .so 文件(相当于 Windows 中的 .dll)来轻松在 Linux 上使用,如下所示:

gcc main.c ex_fun.so -Wl,-rpath=$(pwd)

但是,我在 Windows 中找不到任何直接方法。如何在 C 主脚本程序中使用和调用 MATLAB 输出的 .dll 文件?

应该注意的是,还会生成一个 .def 文件,但我不知道如何将它与输出 dll 文件一起使用。

4

1 回答 1

0

在 Visual Studio IDE 中:

  • 将平台切换到“x64”

在项目属性中:

  • C ++>常规>其他包含目录= ^添加编译文件夹。

  • 链接器>常规>其他库目录= ^添加编译
    文件夹。

  • 链接器>输入>附加依赖=“ex_fun.lib”

  • 在代码中:添加 #include "ex_fun.h"
  • 编译完成后,将“ex_fun.dll”复制到输出文件夹并运行。
于 2017-08-20T20:50:43.313 回答