# MATLAB.JL : LoadError: UndefRefError:

**URL:** <https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831>\
**Category:** General Usage\
**Tags:** package\
**Created:** [December 4, 2019, 2:21am UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831 "2019-12-04T02:21:31Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aquaman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aquaman/32/6586_2.png) [@Aquaman](https://discourse.julialang.org/u/Aquaman)\
**Post date:** [December 4, 2019, 2:21am UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/1 "2019-12-04T02:21:31Z")

</div>

Hello everybody,

I cannot use **MATLAB.jl** due to the error : \>

> ERROR: LoadError: UndefRefError: access to undefined reference

Would you tell me ow to fix this problem in Win10?

Best regards,

---

<div class="post-metadata">

**Author:** ![fredrikekre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fredrikekre/32/1688_2.png) [@fredrikekre](https://discourse.julialang.org/u/fredrikekre)\
**Post date:** [December 4, 2019, 10:18am UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/2 "2019-12-04T10:18:13Z")

</div>

Can you include the full error message (including the stacktrace). While it might not make sense to you, it will most likely be very helpful in the process of locating the error.

---

<div class="post-metadata">

**Author:** ![Aquaman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aquaman/32/6586_2.png) [@Aquaman](https://discourse.julialang.org/u/Aquaman)\
**Post date:** [December 4, 2019, 11:51am UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/3 "2019-12-04T11:51:00Z")

</div>

Hey, Now I send you all the infos.

```julia
Stacktrace:
 [1] MatFile(::String, ::String) at C:\Users\david\.juliapro\JuliaPro_v1.2.0-1\packages\MATLAB\cVrxc\src\matfile.jl:8
 [2] #write_matfile#10 at C:\Users\david\.juliapro\JuliaPro_v1.2.0-1\packages\MATLAB\cVrxc\src\matfile.jl:72 [inlined]
 [3] (::getfield(MATLAB, Symbol("#kw##write_matfile")))(::NamedTuple{(:a, :b, :c, :d, :s, :ss),Tuple{Array{Int32,2},Array{Float64,1},Array{Array{Float64,1},1},Dict{String,Any},String,Array{S,1}}}, ::typeof(write_matfile), ::String) at .\none:0 [4] top-level scope at C:\Users\david\BEM\test.jl:10
in expression starting at C:\Users\david\BEM\test.jl:10

```

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [December 4, 2019, 7:28pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/4 "2019-12-04T19:28:59Z")

</div>

And what is the content of your file test.jl?  
And which Matlab version do you use?

---

<div class="post-metadata">

**Author:** ![Aquaman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aquaman/32/6586_2.png) [@Aquaman](https://discourse.julialang.org/u/Aquaman)\
**Post date:** [December 5, 2019, 3:59am UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/5 "2019-12-05T03:59:02Z")

</div>

test.jl & **Matlab 2019a**

```julia

struct S
    x::Float64
    y::Bool
    z::Vector{Float64}
end

write_matfile("test.mat"; 
    a = Int32[1 2 3; 4 5 6], 
    b = [1.2, 3.4, 5.6, 7.8], 
    c = [[0.0, 1.0], [1.0, 2.0], [1.0, 2.0, 3.0]], 
    d = Dict("name"=>"MATLAB", "score"=>100.0), 
    s = "abcde",
    ss = [S(1.0, true, [1., 2.]), S(2.0, false, [3., 4.])] )

```

---

<div class="post-metadata">

**Author:** ![dawbarton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dawbarton/32/215461_2.png) [@dawbarton](https://discourse.julialang.org/u/dawbarton)\
**Post date:** [December 5, 2019, 12:01pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/6 "2019-12-05T12:01:22Z")

</div>

As a work around, you can use the MAT.jl package to read/write Matlab files (doesn’t require a Matlab installation).

```julia
julia> struct S
           x::Float64
           y::Bool
           z::Vector{Float64}
       end

julia> using MAT

julia> matwrite("test.mat", Dict(
           "a" => Int32[1 2 3; 4 5 6],
           "b" => [1.2, 3.4, 5.6, 7.8],
           "c" => [[0.0, 1.0], [1.0, 2.0], [1.0, 2.0, 3.0]],
           "d" => Dict("name"=>"MATLAB", "score"=>100.0),
           "s" => "abcde",
           "ss" => [S(1.0, true, [1., 2.]), S(2.0, false, [3., 4.])] ))

```

I can read the resulting file in Matlab 2019a.

---

<div class="post-metadata">

**Author:** ![Aquaman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aquaman/32/6586_2.png) [@Aquaman](https://discourse.julialang.org/u/Aquaman)\
**Post date:** [December 5, 2019, 12:08pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/7 "2019-12-05T12:08:02Z")

</div>

> [@dawbarton](#):
>
> MAT

Thanks!

I am not sure, is it the reason that I am using JuliaPro 1.2.0??

---

<div class="post-metadata">

**Author:** ![dawbarton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dawbarton/32/215461_2.png) [@dawbarton](https://discourse.julialang.org/u/dawbarton)\
**Post date:** [December 5, 2019, 12:21pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/8 "2019-12-05T12:21:19Z")

</div>

I’ve no idea, I don’t just JuliaPro - personally I use the regular Julia binaries.

Note that the MAT.jl and MATLAB.jl are quite distinct and achieve different things - the latter is for communication with a running Matlab instance whereas the former is purely for reading/writing Matlab files.

---

<div class="post-metadata">

**Author:** ![Aquaman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aquaman/32/6586_2.png) [@Aquaman](https://discourse.julialang.org/u/Aquaman)\
**Post date:** [December 6, 2019, 6:20am UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/9 "2019-12-06T06:20:35Z")

</div>

thank you!

---

<div class="post-metadata">

**Author:** ![musm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/musm/32/3675_2.png) [@musm](https://discourse.julialang.org/u/musm)\
**Post date:** [December 6, 2019, 8:52pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/10 "2019-12-06T20:52:46Z")

</div>

Can you post to the main MATLAB.jl repo?

Also have you ran `pkg>build MATLAB`

---

<div class="post-metadata">

**Author:** ![Aquaman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aquaman/32/6586_2.png) [@Aquaman](https://discourse.julialang.org/u/Aquaman)\
**Post date:** [December 7, 2019, 2:41pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/11 "2019-12-07T14:41:00Z")

</div>

> [@musm](#):
>
> build MATLAB

please check the error infos (build MATLAB is used.)

```julia

ERROR: LoadError: InitError: IOError: stat: invalid argument (EINVAL)
Stacktrace:
 [1] stat(::String) at .\stat.jl:68
 [2] isdir at .\stat.jl:309 [inlined]
 [3] matlab_libpath at C:\Users\david\.juliapro\JuliaPro_v1.2.0-1\packages\MATLAB\cVrxc\src\mxbase.jl:46 [inlined]
 [4] __init__ () at C:\Users\david\.juliapro\JuliaPro_v1.2.0-1\packages\MATLAB\cVrxc\src\MATLAB.jl:72
 [5] _include_from_serialized(::String, ::Array{Any,1}) at .\loading.jl:685
 [6] _require_from_serialized(::String) at .\loading.jl:736
 [7] _require(::Base.PkgId) at .\loading.jl:1023
 [8] require(::Base.PkgId) at .\loading.jl:911
 [9] require(::Module, ::Symbol) at .\loading.jl:906
 [10] include at .\boot.jl:328 [inlined]
 [11] include_relative(::Module, ::String) at .\loading.jl:1094
 [12] include(::Module, ::String) at .\Base.jl:31
 [13] include(::String) at .\client.jl:431
 [14] top-level scope at none:5
during initialization of module MATLAB
in expression starting at C:\Users\david\.juliapro\JuliaPro_v1.2.0-1\packages\MATLAB\cVrxc\test\runtests.jl:1
ERROR: Package MATLAB errored during testing

```

---

<div class="post-metadata">

**Author:** ![musm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/musm/32/3675_2.png) [@musm](https://discourse.julialang.org/u/musm)\
**Post date:** [December 9, 2019, 6:43pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/12 "2019-12-09T18:43:42Z")

</div>

Is this only from JuliaPro?

I think I now have two reports of MATLAB.jl not working with JuliaPro, but it works fine with regular Julia.

---

<div class="post-metadata">

**Author:** ![musm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/musm/32/3675_2.png) [@musm](https://discourse.julialang.org/u/musm)\
**Post date:** [December 9, 2019, 6:44pm UTC](https://discourse.julialang.org/t/matlab-jl-loaderror-undefreferror/31831/13 "2019-12-09T18:44:17Z")

</div>

May I ask if you could also test with regular Julia ? This would help isolate the issue.
