# Trying to install QML.jl without success

**URL:** <https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761>\
**Category:** New to Julia\
**Created:** [May 8, 2021, 7:29am UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761 "2021-05-08T07:29:47Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jussi\_Salmela](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jussi_salmela/32/22992_2.png) [@Jussi\_Salmela](https://discourse.julialang.org/u/Jussi_Salmela)\
**Post date:** [May 8, 2021, 7:29am UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/1 "2021-05-08T07:29:47Z")

</div>

Hello all!

I decided to try what I can do with QML but I got stuck before even getting started i.e. in the installation phase. Here’s what I tried and what happened:

###### Environment:

PC: Razer Blade 15  
OS: Win 10 (with all updates)  
Julia 1.6.1

###### 

###### What I’ve done:

1. Removing Julia and .julia directory (and the line in PATH env.var.) to get a clean slate

2. Installing Julia 1.6.1 with the PATH updates

3. Starting Julia command line and going to pkg\> and giving st  
==\>  
Status `C:\Users\IsoPomo\.julia\environments\v1.6\Project.toml` (empty project)

4. Giving:  
add QML

Huge output ends like this:  
Precompiling project…  
✗ QML  
52 dependencies successfully precompiled in 15 seconds  
1 dependency errored. To see a full report either run `import Pkg; Pkg.precompile()` or load the package

1. Backspacing to Julia REPL and giving:  
import Pkg; Pkg.precompile()

The output is:  
Precompiling project…  
✗ QML  
0 dependencies successfully precompiled in 2 seconds (52 already precompiled)

ERROR: The following 1 direct dependency failed to precompile:

QML [2db162a6-7e43-52c3-8d84-290c1c42d82a]

ERROR: LoadError: InitError: could not load library “C:\Users\IsoPomo.julia\artifacts\65ee34acf07c8058dc5b67dbfc5f1d04c202d7e2\bin\libjlqml.dll”  
The specified procedure could not be found.  
Stacktrace:  
[1] dlopen(s::String, flags::UInt32; throw\_error::Bool)  
@ Base.Libc.Libdl .\libdl.jl:114  
[2] dlopen(s::String, flags::UInt32)  
@ Base.Libc.Libdl .\libdl.jl:114  
[3] macro expansion  
@ C:\Users\IsoPomo.julia\packages\JLLWrappers\bkwIo\src\products\library\_generators.jl:54 [inlined]  
[4] **init** ()  
@ jlqml\_jll C:\Users\IsoPomo.julia\packages\jlqml\_jll\7qoIT\src\wrappers\x86\_64-w64-mingw32-cxx11.jl:10  
[5] \_include\_from\_serialized(path::String, depmods::Vector{Any})  
@ Base .\loading.jl:674  
[6] \_require\_search\_from\_serialized(pkg::Base.PkgId, sourcepath::String)  
@ Base .\loading.jl:760  
[7] \_require(pkg::Base.PkgId)  
@ Base .\loading.jl:998  
[8] require(uuidkey::Base.PkgId)  
@ Base .\loading.jl:914  
[9] require(into::Module, mod::Symbol)  
@ Base .\loading.jl:901  
[10] include  
@ .\Base.jl:386 [inlined]  
[11] include\_package\_for\_output(pkg::Base.PkgId, input::String, depot\_path::Vector{String}, dl\_load\_path::Vector{String}, load\_path::Vector{String}, concrete\_deps::Vector{Pair{Base.PkgId, UInt64}}, source::Nothing)  
@ Base .\loading.jl:1213  
[12] top-level scope  
@ none:1  
[13] eval  
@ .\boot.jl:360 [inlined]  
[14] eval(x::Expr)  
@ Base.MainInclude .\client.jl:446  
[15] top-level scope  
@ none:1  
during initialization of module jlqml\_jll  
in expression starting at C:\Users\IsoPomo.julia\packages\QML\eDhCS\src\QML.jl:1  
Stacktrace:  
[1] pkgerror(msg::String)  
@ Pkg.Types C:\buildbot\worker\package\_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Types.jl:55  
[2] precompile(ctx::Pkg.Types.Context; internal\_call::Bool, strict::Bool, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})  
@ Pkg.API C:\buildbot\worker\package\_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:1244  
[3] precompile  
@ C:\buildbot\worker\package\_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:920 [inlined]  
[4] #precompile#196  
@ C:\buildbot\worker\package\_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:918 [inlined]  
[5] precompile()  
@ Pkg.API C:\buildbot\worker\package\_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:918  
[6] top-level scope  
@ REPL[3]:1

###### 

It seems to be the same situation like the one reported in the last post of the topic  
[Installing QML.jl](https://discourse.julialang.org/t/installing-qml-jl/533)

Now I don’t know what to do.

---

<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:** [May 8, 2021, 8:55am UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/2 "2021-05-08T08:55:33Z")

</div>

You could create an issue at [https://github.com/barche/QML.jl/issues](https://github.com/barche/QML.jl/issues) .

Or you could try it with Julia 1.6.0 .

---

<div class="post-metadata">

**Author:** ![Jussi\_Salmela](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jussi_salmela/32/22992_2.png) [@Jussi\_Salmela](https://discourse.julialang.org/u/Jussi_Salmela)\
**Post date:** [May 8, 2021, 9:44am UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/3 "2021-05-08T09:44:12Z")

</div>

> [@ufechner7](#):
>
> Or you could try it with Julia 1.6.0 .

I already did, I just forgot to mention that.

---

<div class="post-metadata">

**Author:** ![Jussi\_Salmela](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jussi_salmela/32/22992_2.png) [@Jussi\_Salmela](https://discourse.julialang.org/u/Jussi_Salmela)\
**Post date:** [May 8, 2021, 11:45am UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/4 "2021-05-08T11:45:09Z")

</div>

It turns out that the old phrase “Google is your friend” is still valid. I found out the error has been corrected in QML.jl master and that one can get on by using  
pkg\> add [GitHub - barche/QML.jl: Build Qt5 QML interfaces for Julia programs.](http://github.com/barche/qml.jl#master)

When trying the next logical thing i.e. the line to run the QML.jl examples from the QML GitHub page

include(joinpath(dirname(pathof(QML)), “…”, “example”, “runexamples.jl”))

I get the first app to work but a crash already on the second one. Because this seems to be clearly QML.jl related I will do as ufechner7 (thanks for answering!) suggested and create an issue on this crash on GitHub

---

<div class="post-metadata">

**Author:** ![barche](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/barche/32/79_2.png) [@barche](https://discourse.julialang.org/u/barche)\
**Post date:** [May 8, 2021, 12:15pm UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/5 "2021-05-08T12:15:27Z")

</div>

It may be that the example crashes because not all required packages are installed, I really should think of an elegant way to have the dependencies for the examples installed.

Other than that, if the basics work in the master version then maybe it’s time I did a new release 🙂

---

<div class="post-metadata">

**Author:** ![Jussi\_Salmela](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jussi_salmela/32/22992_2.png) [@Jussi\_Salmela](https://discourse.julialang.org/u/Jussi_Salmela)\
**Post date:** [May 8, 2021, 2:14pm UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/6 "2021-05-08T14:14:13Z")

</div>

The first ex. board.jl ran (I think) OK after I did what I was told i.e.:  
import Pkg; Pkg.add(“Qt5QuickControls\_jll”)

The second one produced this output:  
running example canvas.jl…  
Qt Warning: QQmlApplicationEngine failed to load component ((null):0, (null))  
Qt Warning: file:///C:/Users/IsoPomo/.julia/packages/QML/ZrlNP/example/qml/canvas.qml:3:1: plugin cannot be loaded for module “QtQuick.Controls”: Cannot protect module QtQuick.Controls 2 as it was never registered (file:///C:/Users/IsoPomo/.julia/packages/QML/ZrlNP/example/qml/canvas.qml:3, (null))  
ERROR: LoadError: Failed to load QML file C:\Users\IsoPomo.julia\packages\QML\ZrlNP\example\qml\canvas.qml  
Stacktrace:  
etc…

---

<div class="post-metadata">

**Author:** ![Jussi\_Salmela](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jussi_salmela/32/22992_2.png) [@Jussi\_Salmela](https://discourse.julialang.org/u/Jussi_Salmela)\
**Post date:** [May 8, 2021, 5:16pm UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/7 "2021-05-08T17:16:59Z")

</div>

I copied the directory C:\Users\IsoPomo.julia\packages\QML\ZrlNP  
into my own dir. structure to be able to toggle off the read-only atrr.s  
of the folders and files to be able to edit the files.

1. Bypassing canvas.jl to be able to test the others  
After changing  
if fname != myname && endswith(fname, “.jl”) && fname ∉ excluded  
to  
if fname != myname && fname != “canvas.jl” && endswith(fname, “.jl”) && fname ∉ excluded  
most of the ex. files start running OK (I think). Here’s some remarks.

2. filedialog.jl

Qt Warning: file:///C:/Users/IsoPomo/.julia/artifacts/add1bde5fe01a2ffdb80a0977fc3f6505df530f3/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: Failed to initialize QSettings instance. Status code is: 1 (file:///C:/Users/IsoPomo/.julia/artifacts/add1bde5fe01a2ffdb80a0977fc3f6505df530f3/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102, (null))  
Qt Warning: file:///C:/Users/IsoPomo/.julia/artifacts/add1bde5fe01a2ffdb80a0977fc3f6505df530f3/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: The following application identifiers have not been set: QVector(“organizationName”, “organizationDomain”) (file:///C:/Users/IsoPomo/.julia/artifacts/add1bde5fe01a2ffdb80a0977fc3f6505df530f3/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102, (null))  
selected single file file:///C:/Users/IsoPomo/OMAT\_VARMUUSKOPIOITAVAT/Julia/QML/error.txt  
selected paths:  
/C:/Users/IsoPomo/OMAT\_VARMUUSKOPIOITAVAT/Julia/QML/error.txt

1. grid.jl  
After clicking one of the emojis all emojis disappear. Minimizing/maximizing the window: no change. Refresh needed or what?

2. gui.jl  
The counter value used in the concatenation is one smaller than I supposed it to be

3. makie.jl  
This doesn’t work:  
running example makie.jl…  
ERROR: LoadError: MethodError: no method matching rotate\_cam!(::AbstractPlotting.FigureAxisPlot, ::Float64, ::Float64, ::Float64)  
Closest candidates are:  
rotate\_cam!(::Scene, ::Number…) at C:\Users\IsoPomo.julia\packages\AbstractPlotting\gE7AT\src\camera\camera3d.jl:259  
Stacktrace:  
[1] render\_function(screen::QML.MakieSupport.QMLScreen)  
@ Main C:\Users\IsoPomo\OMAT\_VARMUUSKOPIOITAVAT\Julia\QML\ZrlNP\example\makie.jl:16  
[2] exec()  
@ QML C:\Users\IsoPomo.julia\packages\CxxWrap\OcN1Z\src\CxxWrap.jl:618  
[3] top-level scope  
@ C:\Users\IsoPomo\OMAT\_VARMUUSKOPIOITAVAT\Julia\QML\ZrlNP\example\makie.jl:25  
in expression starting at C:\Users\IsoPomo\OMAT\_VARMUUSKOPIOITAVAT\Julia\QML\ZrlNP\example\makie.jl:25  
ERROR: LoadError: failed process: Process(`'C:\Users\IsoPomo\AppData\Local\Programs\Julia-1.6.1\bin\julia.exe' -Cnative '-JC:\Users\IsoPomo\AppData\Local\Programs\Julia-1.6.1\lib\julia\sys.dll' -g1 --project makie.jl`, ProcessExited(1)) [1]

Stacktrace:  
[1] pipeline\_error  
@ .\process.jl:525 [inlined]  
[2] run(::Cmd; wait::Bool)  
@ Base .\process.jl:440  
[3] run  
@ .\process.jl:438 [inlined]  
[4] (::var"#1#2")()  
@ Main C:\Users\IsoPomo\OMAT\_VARMUUSKOPIOITAVAT\Julia\QML\ZrlNP\example\runexamples.jl:9  
[5] cd(f::var"#1#2", dir::String)  
@ Base.Filesystem .\file.jl:95  
[6] top-level scope  
@ C:\Users\IsoPomo\OMAT\_VARMUUSKOPIOITAVAT\Julia\QML\ZrlNP\example\runexamples.jl:5  
[7] include(fname::String)  
@ Base.MainInclude .\client.jl:444  
[8] top-level scope  
@ REPL[1]:1  
in expression starting at C:\Users\IsoPomo\OMAT\_VARMUUSKOPIOITAVAT\Julia\QML\ZrlNP\example\runexamples.jl:5

---

<div class="post-metadata">

**Author:** ![barche](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/barche/32/79_2.png) [@barche](https://discourse.julialang.org/u/barche)\
**Post date:** [May 11, 2021, 9:23pm UTC](https://discourse.julialang.org/t/trying-to-install-qml-jl-without-success/60761/8 "2021-05-11T21:23:57Z")

</div>

Thanks for the detailed feedback. Some comments:

- grid.jl: can’t reproduce, maybe running only the grid example in a fresh julia session could help
- gui.jl: the lower count is intentional 🙂
- Makie is broken, there is a PR to fix it that I still need to merge
- Can’t get canvas to run either, I need to investigate this. Edit: this example is missing a `using Qt5QuickControls2_jll`
