在linux中的matalb中使用mex进行编译时出错

时间:2017-03-23 03:28:21

标签: matlab mex matlab-compiler

我正在使用代码开发人员提供的一些指令来编译库。 但是我得到的错误如图所示。有没有人对此有任何想法?这是我第一次使用mex

mex LDFLAGS="\$LDFLAGS -Wl,-rpath,\." nativeborg.cpp libborg.so

我试图在linux中用matlab编译mex。

enter image description here

1 个答案:

答案 0 :(得分:1)

mex并不能直接识别C ++编译器或链接器选项。您有两种选择:

  1. 一劳永逸地在matlab设置中修改编译器选项.xml文件。例如,在linux上,这个文件名为mex_C ++ _ glnxa64.xml。
  2. 暂时将选项附加到现有选项:

    mex CXXFLAGS = [' $ CXXFLAGS,'您的编译器选项字符串']文件名

    mex LDFLAGS = [' $ LDFLAGS,'您的链接器选项字符串']文件名

  3. 两者都取决于您使用的平台。例如,在Windows上,您必须使用COMPFLAGS而不是CXXFLAGS。 (1)的优点是它已经设置为使用平台的正确选项名称。请参阅"覆盖默认编译器开关"在" mex"文档。