使用不同的编译器在Linux上为Matlab创建mex

时间:2017-05-28 17:33:00

标签: linux matlab gcc mex icc

我知道Linux Matlab只有官方支持gcc 4.9 for mex。

有谁知道如何让Linux英特尔编译器(icc)在Linux上使用mex或更新版本的gcc?

这是最新版本的Matlab(2015-2017)。

1 个答案:

答案 0 :(得分:0)

我假设您谈论C ++项目。是的,它可以使用更新版本的gcc。

  • 检查supported compilers以找出哪个Matlab使用哪个gcc版本。
  • 告诉你的新版gcc使用你的Matlab制作的gcc版本的ABI版本来编译项目和所有依赖项。
  • 告诉Matlab使用/ usr / lib中的标准c ++库,而不是它自己包含的库。它向后兼容。

gcc>的示例4.9.x for Matlab 2017b:

  • Matlab 2017b使用gcc 4.9.x
  • 构建
  • gcc 4.9.x与CXX ABI version 8
  • 兼容
  • 将gcc与编译标记-fabi-version=8一起用于您的mex文件和所有依赖项
  • 在致电export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 之前,在matlab内的