juliamatlab / mexjulia

embedding Julia in the MATLAB process.
MIT License
52 stars 14 forks source link

At jl.config: g++: error: libjulia.dll.a: No such file or directory #46

Closed standarddeviant closed 7 years ago

standarddeviant commented 7 years ago

I may have missed something, but when I run jl.config() on Matlab2016A, Windows x86-64, Matlab yields g++: error: libjulia.dll.a: No such file or directory

This seems obvious based on https://github.com/JuliaLang/julia/issues/13337

I have verified that there is not a file there, but other issues seem to have gotten past this point. Apologies if this is redundant, but I searched the issues and didn't see a workaround for a missing libjulia.dll.a

As an aside, mexjulia seems like an intriguing way to wean codebases off of MATLAB in a piecemeal fashion, which is rather exciting.

Here is the full output of jl.config():

>> jl.config
         build_cflags: '-O -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia" -DJULIA_ENABLE_THREADING'
        build_ldflags: '-L"C:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib"'
         build_ldlibs: 'libjulia.dll.a'
            build_src: 'C:\Users\stddev\src\mexjulia\mexjulia.cpp'
              inc_dir: 'C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia'
             is_debug: 'false'
            julia_bin: 'C:\Users\stddev\AppData\Local\Julia-0.6.0\bin\julia.exe'
           julia_home: 'C:\Users\stddev\AppData\Local\Julia-0.6.0\bin'
             lib_base: 'julia'
              lib_dir: 'C:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib'
             lib_path: 'C:\Users\stddev\AppData\Local\Julia-0.6.0\bin\libjulia.dll'
            sys_image: 'C:\Users\stddev\AppData\Local\Julia-0.6.0\lib\julia\sys.dll'
    threading_enabled: 'true'
C:\Users\stddev\src\mexjulia is not on the MATLAB path. Adding it and saving...
The mex command to be executed:
mex -v -largeArrayDims -L"C:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib" -outdir "C:\Users\stddev\src\mexjulia" -O -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia" -DJULIA_ENABLE_THREADING C:\Users\stddev\src\mexjulia\mexjulia.cpp libjulia.dll.a
Verbose mode is on.
... Looking for compiler 'MinGW64 Compiler (C++)' ...
... Looking for environment variable 'MW_MINGW64_LOC' ...Yes ('C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9').
... Looking for file 'C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++.exe' ...Yes.
... Looking for folder 'C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9' ...Yes.
Found installed compiler 'MinGW64 Compiler (C++)'.
Set PATH = C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin;C:\Program Files\MATLAB\R2016a\extern\include\win64;C:\Program Files\MATLAB\R2016a\extern\include;C:\Program Files\MATLAB\R2016a\simulink\include;C:\Program Files\MATLAB\R2016a\lib\win64;c:\cygwin;c:\cygwin\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp;C:\Users\stddev\bin\cudnn\bin;C:\Program Files\Microsoft MPI\Bin\;C:\ProgramData\Oracle\Java\javapath;C:\Program Files\CyberSafe\bin;C:\Program Files (x86)\CyberSafe\bin;C:\Perl\site\bin;C:\Perl\bin;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\ProgramData\Anaconda3;C:\ProgramData\Anaconda3\Scripts;C:\ProgramData\Anaconda3\Library\bin;C:\Program Files\MATLAB\R2016b\runtime\win64;C:\Program Files\MATLAB\R2016b\bin;C:\Program Files\MATLAB\R2016b\polyspace\bin;C:\Program Files (x86)\Gow\bin;C:\Program Files\Git\cmd;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\dotnet\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\CUPTI\libx64;C:\cygwin\bin;C:\Program Files\MATLAB\R2016a\runtime\win64;C:\Program Files\MATLAB\R2016a\bin;C:\Program Files\MATLAB\R2016a\polyspace\bin;C:\Program Files\JSONBuddy;C:\Users\stddev\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\sox-14-4-2;C:\Users\stddev\bin\mpg123;C:\Users\stddev\bin\dlc;C:\Users\stddev\bin\cudnn\bin
Set INCLUDE = C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\include;
Set LIB = C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\lib;;
Set MW_TARGET_ARCH = win64;
Set LIBPATH = C:\Program Files\MATLAB\R2016a\extern\lib\win64;
Options file details
-------------------------------------------------------------------
    Compiler location: C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9
    Options file: C:\Users\stddev\AppData\Roaming\MathWorks\MATLAB\R2016a\mex_C++_win64.xml
    CMDLINE1 : C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++ -c -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016a/extern/include" -I"C:\Program Files\MATLAB\R2016a/simulink/include" -fexceptions -fno-omit-frame-pointer -O -DNDEBUG C:\Users\stddev\src\mexjulia\mexjulia.cpp -o C:\Users\stddev\AppData\Local\Temp\mex_7979956026435438_8004\mexjulia.obj
    CMDLINE2 : C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++ -m64 -Wl,--no-undefined -shared -s -Wl,"C:\Program Files\MATLAB\R2016a/extern/lib/win64/mingw64/mexFunction.def" C:\Users\stddev\AppData\Local\Temp\mex_7979956026435438_8004\mexjulia.obj   libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016a\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas -o C:\Users\stddev\src\mexjulia\mexjulia.mexw64
    CXX : C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++
    COMPILER : C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++
    DEFINES : -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE 
    MATLABMEX : -DMATLAB_MEX_FILE 
    CXXFLAGS : -fexceptions -fno-omit-frame-pointer
    INCLUDE : -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016a/extern/include" -I"C:\Program Files\MATLAB\R2016a/simulink/include"
    CXXOPTIMFLAGS : -O -DNDEBUG
    CXXDEBUGFLAGS : -g
    LDXX : C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++
    LINKER : C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++
    LDFLAGS : -m64 -Wl,--no-undefined
    LDTYPE : -shared
    LINKEXPORT : -Wl,"C:\Program Files\MATLAB\R2016a/extern/lib/win64/mingw64/mexFunction.def"
    LIBLOC : C:\Program Files\MATLAB\R2016a\extern\lib\win64\mingw64
    LINKLIBS : libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016a\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas
    LDOPTIMFLAGS : -s
    LDDEBUGFLAGS : -g
    OBJEXT : .obj
    LDEXT : .mexw64
    SETENV : set COMPILER=g++ 
                set COMPFLAGS=-c -fexceptions -fno-omit-frame-pointer -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -DMATLAB_MEX_FILE  
                set OPTIMFLAGS=-O -DNDEBUG 
                set DEBUGFLAGS=-g 
                set LINKER=g++ 
                set LINKFLAGS=-m64 -Wl,--no-undefined -shared libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016a\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas -Wl,"C:\Program Files\MATLAB\R2016a/extern/lib/win64/mingw64/mexFunction.def" 
                set LINKDEBUGFLAGS=-g
                set NAME_OUTPUT= -o "%OUTDIR%%MEX_NAME%%MEX_EXT%"
    MINGWROOT : C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9
    MATLABROOT : C:\Program Files\MATLAB\R2016a
    ARCH : win64
    SRC : C:\Users\stddev\src\mexjulia\mexjulia.cpp
    OBJ : C:\Users\stddev\AppData\Local\Temp\mex_7979956026435438_8004\mexjulia.obj
    OBJS : C:\Users\stddev\AppData\Local\Temp\mex_7979956026435438_8004\mexjulia.obj 
    SRCROOT : C:\Users\stddev\src\mexjulia\mexjulia
    DEF : C:\Users\stddev\AppData\Local\Temp\mex_7979956026435438_8004\mexjulia.def
    EXP : C:\Users\stddev\src\mexjulia\mexjulia.exp
    LIB : C:\Users\stddev\src\mexjulia\mexjulia.lib
    EXE : C:\Users\stddev\src\mexjulia\mexjulia.mexw64
    ILK : C:\Users\stddev\src\mexjulia\mexjulia.ilk
    MANIFEST : C:\Users\stddev\src\mexjulia\mexjulia.mexw64.manifest
    TEMPNAME : C:\Users\stddev\src\mexjulia\mexjulia
    EXEDIR : C:\Users\stddev\src\mexjulia\
    EXENAME : mexjulia
    OPTIM : -O -DNDEBUG
    LINKOPTIM : -s
-------------------------------------------------------------------
Building with 'MinGW64 Compiler (C++)'.
C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++ -c -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016a/extern/include" -I"C:\Program Files\MATLAB\R2016a/simulink/include" -fexceptions -fno-omit-frame-pointer -O -DNDEBUG C:\Users\stddev\src\mexjulia\mexjulia.cpp -o C:\Users\stddev\AppData\Local\Temp\mex_7979956026435438_8004\mexjulia.obj
C:\ProgramData\MATLAB\SupportPackages\R2016b\MW_MinGW_4_9\bin\g++ -m64 -Wl,--no-undefined -shared -s -Wl,"C:\Program Files\MATLAB\R2016a/extern/lib/win64/mingw64/mexFunction.def" C:\Users\stddev\AppData\Local\Temp\mex_7979956026435438_8004\mexjulia.obj   libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016a\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas -o C:\Users\stddev\src\mexjulia\mexjulia.mexw64
Error using mex
g++: error: libjulia.dll.a: No such file or directory

Error in jl.build (line 287)
            eval(mex_cmd);
Error in jl.config (line 267)
            jl.build; 
twadleigh commented 7 years ago

The standard julia installer for windows should include a libjulia.dll.a in the lib directory.

Also, it looks like you are using MinGW to build. I have no reason to believe that using it to build mexjulia through the mex command (as jl.config does) shouldn't "just work," but I also haven't tried this myself.

standarddeviant commented 7 years ago

I was looking in the bin directory before. It is included in the lib directory. Apologies for the spam.

@twadleigh Do you typically use MSVC? If so, what version?

twadleigh commented 7 years ago

Ever since I put jl.config together to make the building simpler across platforms I have primarily used MSVC to build mexjulia. In that time I've probably used every version from 2008 to 2017 without any real issues.

By closing this issue, does this mean you got it to build successfully with MinGW? If so, great. If not, let's reopen this and see if we can at least get it to build for you.

I'll also be curious to know if you get the immediate segfaults that other windows users (#39) have reported. I myself haven't been able to duplicate it. An extra data point might at least help narrow down under what conditions it occurs.

twadleigh commented 7 years ago

OK, I think I know what might fix this for building with MinGW. libjulia.dll.a is spelled out as an extra object for linking on the command line vs. what should be the normal thing (adding -ljulia). The reason for that is that -ljulia will cause MSVC to look for something named julia.lib, which, of course, doesn't exist. Hence the hack. MinGW shouldn't have that problem, though.

Getting jl.config to work with both MSVC and MinGW may now mean we have to be able to query which compiler we are using. Which means more hackery and special casing. sigh (Using the mex command to build was supposed to make things simpler. :cry: )

twadleigh commented 7 years ago

It might also be sufficient to list the full path to libjulia.dll.a when attempting to do the link. That would avoid special case hackery if it works.

standarddeviant commented 7 years ago

Your last suggestion is very reasonable - and it worked! I have a few matlab versions on different computers. I'll report back if using the libjulia.dll.a fullpath doesn't work, but I'm closing the issue for now.

I don't have an affinity for MinGW, but it is the "free and click these buttons to get a C/C++ compiler" for matlab since 2016 or so.

Full output below (different machine than above), Win10, x86-64, Matlab 2016b (64bit):

>> mex -v -largeArrayDims -L"C:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib" -outdir "C:\Users\stddev\src\mexjulia" -O -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia" -DJULIA_ENABLE_THREADING C:\Users\stddev\src\mexjulia\mexjulia.cpp C:\Users\stddev\AppData\Local\Julia-0.6.0\lib\libjulia.dll.a
Verbose mode is on.
... Looking for compiler 'MinGW64 Compiler (C++)' ...
... Looking for environment variable 'MW_MINGW64_LOC' ...Yes ('C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset').
... Looking for file 'C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++.exe' ...Yes.
... Looking for folder 'C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset' ...Yes.
Found installed compiler 'MinGW64 Compiler (C++)'.
Set PATH = C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin;C:\Program Files\MATLAB\R2016b\extern\include\win64;C:\Program Files\MATLAB\R2016b\extern\include;C:\Program Files\MATLAB\R2016b\simulink\include;C:\Program Files\MATLAB\R2016b\lib\win64;C:\MinGW\bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Anaconda3\Scripts;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Windows\System32;C:\Users\stddev\Downloads\ffmpeg-20170116-e664730-win64-static\bin;C:\Program Files (x86)\Gow\bin;C:\Anaconda3;C:\Program Files\Git\bin;C:\Program Files (x86)\Java\jre1.8.0_101\bin;C:\Program Files (x86)\SSH Communications Security\SSH Secure Shell;C:\Program Files\TortoiseSVN\bin;C:\Program Files (x86)\sox-14-4-2;C:\Users\stddev\.babun;C:\Users\stddev\AppData\Local\Julia-0.5.0\bin;C:\Users\stddev\AppData\Local\Microsoft\WindowsApps;C:\Users\stddev\AppData\Local\atom\bin;C:\Program Files (x86)\Meld
Set INCLUDE = C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\include;C:\MinGW\include;
Set LIB = C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\lib;;C:\MinGW\lib;;
Set MW_TARGET_ARCH = win64;win64;
Set LIBPATH = C:\Program Files\MATLAB\R2016b\extern\lib\win64;C:\Program Files\MATLAB\R2016b\extern\lib\win64;
Options file details
-------------------------------------------------------------------
    Compiler location: C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset
    Options file: C:\Users\stddev\AppData\Roaming\MathWorks\MATLAB\R2016b\mex_C++_win64.xml
    CMDLINE2 : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++ -m64 -Wl,--no-undefined -shared -s -Wl,"C:\Program Files\MATLAB\R2016b/extern/lib/win64/mingw64/exportsmexfileversion.def" C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\mexjulia.obj C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\cpp_mexapi_version.obj   C:\Users\stddev\AppData\Local\Julia-0.6.0\lib\libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016b\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas -o C:\Users\stddev\src\mexjulia\mexjulia.mexw64
    CXX : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++
    COMPILER : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++
    DEFINES : -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE 
    MATLABMEX : -DMATLAB_MEX_FILE 
    CXXFLAGS : -fexceptions -fno-omit-frame-pointer -std=c++11
    INCLUDE : -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016b/extern/include" -I"C:\Program Files\MATLAB\R2016b/simulink/include"
    CXXOPTIMFLAGS : -O -DNDEBUG
    CXXDEBUGFLAGS : -g
    LDXX : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++
    LINKER : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++
    LDFLAGS : -m64 -Wl,--no-undefined
    LDTYPE : -shared
    LINKEXPORT : -Wl,"C:\Program Files\MATLAB\R2016b/extern/lib/win64/mingw64/mexFunction.def"
    LINKEXPORTVER : -Wl,"C:\Program Files\MATLAB\R2016b/extern/lib/win64/mingw64/exportsmexfileversion.def"
    LIBLOC : C:\Program Files\MATLAB\R2016b\extern\lib\win64\mingw64
    LINKLIBS : C:\Users\stddev\AppData\Local\Julia-0.6.0\lib\libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016b\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas
    LDOPTIMFLAGS : -s
    LDDEBUGFLAGS : -g
    OBJEXT : .obj
    LDEXT : .mexw64
    SETENV : set COMPILER=g++ 
                set COMPFLAGS=-c -fexceptions -fno-omit-frame-pointer -std=c++11 -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -DMATLAB_MEX_FILE  
                set OPTIMFLAGS=-O -DNDEBUG 
                set DEBUGFLAGS=-g 
                set LINKER=g++ 
                set LINKFLAGS=-m64 -Wl,--no-undefined -shared C:\Users\stddev\AppData\Local\Julia-0.6.0\lib\libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016b\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas -Wl,"C:\Program Files\MATLAB\R2016b/extern/lib/win64/mingw64/mexFunction.def" 
                set LINKDEBUGFLAGS=-g
                set NAME_OUTPUT= -o "%OUTDIR%%MEX_NAME%%MEX_EXT%"
    MINGWROOT : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset
    MATLABROOT : C:\Program Files\MATLAB\R2016b
    ARCH : win64
    SRC : C:\Users\stddev\src\mexjulia\mexjulia.cpp;"C:\Program Files\MATLAB\R2016b\extern\version\cpp_mexapi_version.cpp"
    OBJ : C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\mexjulia.obj;C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\cpp_mexapi_version.obj
    OBJS : C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\mexjulia.obj C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\cpp_mexapi_version.obj 
    SRCROOT : C:\Users\stddev\src\mexjulia\mexjulia
    DEF : C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\mexjulia.def
    EXP : C:\Users\stddev\src\mexjulia\mexjulia.exp
    LIB : C:\Users\stddev\src\mexjulia\mexjulia.lib
    EXE : C:\Users\stddev\src\mexjulia\mexjulia.mexw64
    ILK : C:\Users\stddev\src\mexjulia\mexjulia.ilk
    MANIFEST : C:\Users\stddev\src\mexjulia\mexjulia.mexw64.manifest
    TEMPNAME : C:\Users\stddev\src\mexjulia\mexjulia
    EXEDIR : C:\Users\stddev\src\mexjulia\
    EXENAME : mexjulia
    OPTIM : -O -DNDEBUG
    LINKOPTIM : -s
    CMDLINE1_0 : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++ -c -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016b/extern/include" -I"C:\Program Files\MATLAB\R2016b/simulink/include" -fexceptions -fno-omit-frame-pointer -std=c++11 -O -DNDEBUG C:\Users\stddev\src\mexjulia\mexjulia.cpp -o C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\mexjulia.obj
    CMDLINE1_1 : C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++ -c -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016b/extern/include" -I"C:\Program Files\MATLAB\R2016b/simulink/include" -fexceptions -fno-omit-frame-pointer -std=c++11 -O -DNDEBUG "C:\Program Files\MATLAB\R2016b\extern\version\cpp_mexapi_version.cpp" -o C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\cpp_mexapi_version.obj
-------------------------------------------------------------------
Building with 'MinGW64 Compiler (C++)'.
C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++ -c -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016b/extern/include" -I"C:\Program Files\MATLAB\R2016b/simulink/include" -fexceptions -fno-omit-frame-pointer -std=c++11 -O -DNDEBUG C:\Users\stddev\src\mexjulia\mexjulia.cpp -o C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\mexjulia.obj
C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++ -c -DJULIA_ENABLE_THREADING   -m64 -DMATLAB_MEX_FILE  -I"C:\Users\stddev\AppData\Local\Julia-0.6.0\include\julia"  -I"C:\Program Files\MATLAB\R2016b/extern/include" -I"C:\Program Files\MATLAB\R2016b/simulink/include" -fexceptions -fno-omit-frame-pointer -std=c++11 -O -DNDEBUG "C:\Program Files\MATLAB\R2016b\extern\version\cpp_mexapi_version.cpp" -o C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\cpp_mexapi_version.obj
C:\ProgramData\MATLAB\SupportPackages\R2016b\3P.instrset\mingw_492.instrset\bin\g++ -m64 -Wl,--no-undefined -shared -s -Wl,"C:\Program Files\MATLAB\R2016b/extern/lib/win64/mingw64/exportsmexfileversion.def" C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\mexjulia.obj C:\Users\stddev\AppData\Local\Temp\mex_6090246845018_13908\cpp_mexapi_version.obj   C:\Users\stddev\AppData\Local\Julia-0.6.0\lib\libjulia.dll.a  -LC:\Users\stddev\AppData\Local\Julia-0.6.0\bin\..\lib   -L"C:\Program Files\MATLAB\R2016b\extern\lib\win64\mingw64" -llibmx -llibmex -llibmat -lm -llibmwlapack -llibmwblas -o C:\Users\stddev\src\mexjulia\mexjulia.mexw64
MEX completed successfully.
>> jl.eval('2+2')

ans =

  int64

   4

>> 
standarddeviant commented 7 years ago

I submitted a PR: https://github.com/twadleigh/mexjulia/pull/47