2019-08-12 17:12, Laimis rašė:
> Tą ir turėjau omenyje: reikia krūvos include'inamų katalogų, link'inamų
> (matlab'o ir išorinių) bibliotekų, galbūt dar kažkokių specifinių
> -Define'ų ir/ar kompiliatoriaus/linker'io opcijų. Konkrečiu atveju, kaip
> suprantu iš mex eilutės, libutil.a yra išorinė statinė biblioteka (viena
> iš) su kuria reikia sulink'inti, tad kaip minimum -lutil.
>> mex.getCompilerConfigurations('cpp','Selected')
ans =
CompilerConfiguration with properties:
Name: 'Cygwin Compiler (C++)'
Manufacturer: 'GNU'
Language: 'C++'
Version: '7.4.0'
Location: 'C:\cygwin64'
ShortName: 'cygwin64-g++'
Priority: 'E'
Details: [1×1 mex.CompilerConfigurationDetails]
LinkerName: 'C:\cygwin64\bin\g++'
LinkerVersion: ''
MexOpt:
'C:\Users\ejs\AppData\Roaming\MathWorks\MATLAB\R2019a\mex_C++_win64.xml'
>> ans.Details
ans =
CompilerConfigurationDetails with properties:
CompilerExecutable: 'C:\cygwin64\bin\g++'
CompilerFlags: '-fexceptions -fno-omit-frame-pointer
-std=c++11'
OptimizationFlags: '-O2 -fwrapv -DNDEBUG'
DebugFlags: '-g'
LinkerExecutable: 'C:\cygwin64\bin\g++'
LinkerFlags: '-m64 -Wl,--no-undefined -shared -static'
LinkerOptimizationFlags: '-s'
LinkerDebugFlags: '-g'
SetEnv: 'set COMPILER=C:\cygwin64\bin\gcc↵
set CXXCOMPILER=C:\cygwin64\bin\g++↵ set
COMPFLAGS=-c -fexceptions -fno-omit-frame-pointer -m64 -DMATLAB_MEX_FILE
-DMATLAB_MEX_FILE ↵ set CXXCOMPFLAGS=-c -fexceptions
-fno-omit-frame-pointer -std=c++11 -m64 -DMATLAB_MEX_FILE
-DMATLAB_MEX_FILE ↵ set OPTIMFLAGS=-O2 -fwrapv -DNDEBUG↵
set DEBUGFLAGS=-g↵ set
LINKER=C:\cygwin64\bin\gcc↵ set
CXXLINKER=C:\cygwin64\bin\g++↵ set LINKFLAGS=-m64
-Wl,--no-undefined -shared -static -L"C:\Program
Files\MATLAB\R2019a\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat
-lm -llibmwlapack -llibmwblas -llibMatlabDataArray -llibMatlabEngine
-Wl,"C:\Program
Files\MATLAB\R2019a/extern/lib/win64/mingw64/mexFunction.def"↵
set LINKDEBUGFLAGS=-g↵ set NAME_OUTPUT= -o
"%OUTDIR%%MEX_NAME%%MEX_EXT%"↵set PATH=C:\cygwin64\bin;C:\Program
Files\MATLAB\R2019a\extern\include\win64;C:\Program
Files\MATLAB\R2019a\extern\include;C:\Program
Files\MATLAB\R2019a\simulink\include;C:\Program
Files\MATLAB\R2019a\lib\win64;%MATLAB_BIN%;%PATH%↵set
INCLUDE=C:\cygwin64\include;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include\c++;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include\c++\x86_64-pc-cygwin;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include\c++\backward;C:\cygwin64\x86_64-pc-cygwin\include;%INCLUDE%↵set
LIB=C:\cygwin64\lib;;%LIB%↵set LIBPATH=C:\Program
Files\MATLAB\R2019a\extern\lib\win64;%LIBPATH%↵'
CommandLineShell: 'set MINGW_ROOT_PATH=C:\cygwin64'
CommandLineShellArg: ''
>> ans.Details.SetEnv
ans =
'set COMPILER=C:\cygwin64\bin\gcc
set CXXCOMPILER=C:\cygwin64\bin\g++
set COMPFLAGS=-c -fexceptions
-fno-omit-frame-pointer -m64 -DMATLAB_MEX_FILE -DMATLAB_MEX_FILE
set CXXCOMPFLAGS=-c -fexceptions
-fno-omit-frame-pointer -std=c++11 -m64 -DMATLAB_MEX_FILE
-DMATLAB_MEX_FILE
set OPTIMFLAGS=-O2 -fwrapv -DNDEBUG
set DEBUGFLAGS=-g
set LINKER=C:\cygwin64\bin\gcc
set CXXLINKER=C:\cygwin64\bin\g++
set LINKFLAGS=-m64 -Wl,--no-undefined -shared
-static -L"C:\Program Files\MATLAB\R2019a\extern\lib\win64\mingw64"
-llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas
-llibMatlabDataArray -llibMatlabEngine -Wl,"C:\Program
Files\MATLAB\R2019a/extern/lib/win64/mingw64/mexFunction.def"
set LINKDEBUGFLAGS=-g
set NAME_OUTPUT= -o "%OUTDIR%%MEX_NAME%%MEX_EXT%"
set PATH=C:\cygwin64\bin;C:\Program
Files\MATLAB\R2019a\extern\include\win64;C:\Program
Files\MATLAB\R2019a\extern\include;C:\Program
Files\MATLAB\R2019a\simulink\include;C:\Program
Files\MATLAB\R2019a\lib\win64;%MATLAB_BIN%;%PATH%
set
INCLUDE=C:\cygwin64\include;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include\c++;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include\c++\x86_64-pc-cygwin;C:\cygwin64\lib\gcc\x86_64-pc-cygwin\7.4.0\include\c++\backward;C:\cygwin64\x86_64-pc-cygwin\include;%INCLUDE%
set LIB=C:\cygwin64\lib;;%LIB%
set LIBPATH=C:\Program Files\MATLAB\R2019a\extern\lib\win64;%LIBPATH%
'
--
Grzegorz
Chrząszczyrzewoszyce, powiat Łękołody