fl:filesys​tem:Access​Denied when calling compiled MEX file

I have a program in a few c++ header and program files, with one file containing a gateway function. I'm able to compile with no errors on Mac and on Linux. On my mac, I can then run the program with no problems. On the Linux cluster I'm working on, when I attempt to run the compiled program I get only the message: "fl:filesystem:AccessDenied". There is no context, and I don't know what is throwing this error. The source files and the binary file are all within my home directory, and I have execute permission for the binary file. I can't see any evidence of any other program accessing the binary or the source files.
Does anyone know what this error means, or how it might occur? I don't even know what the fl: part of the error ID refers to. I've Googled this and only come up with posts about unrelated issues.
Potentially related (though I also see this on a different Linux system that does not show the error) is the warning that comes up when I compile: Warning: You are using gcc version '5.4.0'. The version of gcc is not supported. The version currently supported with MEX is '4.9.x'. For a list of currently supported compilers see: http://www.mathworks.com/support/compilers/current_release.
This is on a cluster where I don't have access to older versions of gcc or newer versions of Matlab beyond 2017a, so there isn't much I can do about this potential incompatibility.

1 件のコメント

Neal Morton
Neal Morton 2018 年 7 月 20 日
編集済み: Neal Morton 2018 年 7 月 20 日
Did some more digging. To minimally reproduce the problem on my system, I can copy the mexcpp.cpp example from the Matlab documentation, and add:
#include sstream
Then, in the gateway function add: ostringstream ss;
Finally, in Matlab:
>> mex mexcpp.cpp Building with 'g++'. Warning: You are using gcc version '5.4.0'. The version of gcc is not supported. The version currently supported with MEX is '4.9.x'. For a list of currently supported compilers see: http://www.mathworks.com/support/compilers/current_release. MEX completed successfully. >> mexcpp(1,2) fl:filesystem:AccessDenied
Other parts of the standard library seem to work, but oddly enough I can't use ostringstream objects. For now, I'll just do without them.

サインインしてコメントする。

回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeMATLAB Compiler についてさらに検索

製品

リリース

R2017a

質問済み:

2018 年 7 月 20 日

編集済み:

2018 年 7 月 20 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by