# UndefVarError: \`Point2f\` not defined

**URL:** <https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579>\
**Category:** General Usage\
**Created:** [July 13, 2023, 3:41pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579 "2023-07-13T15:41:50Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![Wulf](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wulf/32/204058_2.png) [@Wulf](https://discourse.julialang.org/u/Wulf)\
**Post date:** [July 13, 2023, 3:41pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/1 "2023-07-13T15:41:50Z")

</div>

Without apparent modifications after compiling / running in the terminal of VSCode/ VSCodium the message:

ERROR: UndefVarError: `Point2f` not defined

appears, referring to a line that attempts to declare an observable of the type Point2f.

Before running

```julia

import Pkg; Pkg.add("GLMakie"); using GLMakie;

FirstPoints = Observable(Point2[])
points = Observable(Point2f[])

```

I input in the terminal “ ] registry rm General “, and delete Manifest.toml and Project.toml in the present Julia environment.

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 13, 2023, 3:45pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/2 "2023-07-13T15:45:53Z")

</div>

It looks like the type in GLMakie is called `Point2f0`, not `Point2f`? Try using Makie.jl, which is the modern replacement for GLMakie.jl (which is deprecated). Makie.jl defines `Point2f`, it looks like.

---

<div class="post-metadata">

**Author:** ![nsajko](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nsajko/32/221187_2.png) [@nsajko](https://discourse.julialang.org/u/nsajko)\
**Post date:** [July 13, 2023, 4:00pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/3 "2023-07-13T16:00:19Z")

</div>

> [@Wulf](#):
>
> `Point2[]`

> [@Wulf](#):
>
> `Point2f[]`

Seems like a typo.

> [@stevengj](#):
>
> Try using Makie.jl, which is the modern replacement for GLMakie.jl (which is deprecated).

Are you sure? The Makie [docs](https://docs.makie.org/stable/#installation_and_import) still recommend adding and using GLMakie.

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 13, 2023, 4:02pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/4 "2023-07-13T16:02:55Z")

</div>

> [@nsajko](#):
>
> The Makie [docs](https://docs.makie.org/stable/#installation_and_import) still recommend adding and using GLMakie.

Sorry, the GLMakie.jl _repository_ is deprecated, but the package has been moved into Makie.jl. Make sure you have installed the latter rather than the former.

---

<div class="post-metadata">

**Author:** ![sijo](https://avatars.discourse-cdn.com/v4/letter/s/da6949/32.png) [@sijo](https://discourse.julialang.org/u/sijo)\
**Post date:** [July 13, 2023, 4:06pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/5 "2023-07-13T16:06:31Z")

</div>

The GLMakie GitHub repo is deprecated but not the GLMakie package (it’s now part of the Makie monorepo). It’s correct to install the GLMakie package in order to use that backend.

`Point2f` is correct (`Point2f0` is the old deprecated name). It should be exported by GLMakie. If not, probably @Wulf installed an old version of GLMakie for some reason. What does `]status` say?

(`Point2` is also a valid (abstract) type)

---

<div class="post-metadata">

**Author:** ![Wulf](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wulf/32/204058_2.png) [@Wulf](https://discourse.julialang.org/u/Wulf)\
**Post date:** [July 13, 2023, 5:35pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/6 "2023-07-13T17:35:41Z")

</div>

No typo. So far I managed to run run that used Point2f by replacing it with Point2.

---

<div class="post-metadata">

**Author:** ![Wulf](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wulf/32/204058_2.png) [@Wulf](https://discourse.julialang.org/u/Wulf)\
**Post date:** [July 13, 2023, 5:38pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/7 "2023-07-13T17:38:49Z")

</div>

I had tried to enforce an old version of GLMakie, but that did not help. Today I kept it undefined, and got GLMakie v0.8.6. However I would appreciate more insight how to get better control of the packages in order to achieve reproducible conditions.

---

<div class="post-metadata">

**Author:** ![Wulf](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wulf/32/204058_2.png) [@Wulf](https://discourse.julialang.org/u/Wulf)\
**Post date:** [July 13, 2023, 5:53pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/8 "2023-07-13T17:53:36Z")

</div>

About the old version of GLMakie: Recently I reinstalled julia to version 1.9.2 hoping to remedy such an issue, but it did not influence the behaviour.

---

<div class="post-metadata">

**Author:** ![Wulf](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wulf/32/204058_2.png) [@Wulf](https://discourse.julialang.org/u/Wulf)\
**Post date:** [July 13, 2023, 6:30pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/9 "2023-07-13T18:30:04Z")

</div>

Also with Makie I get about one error less run, and about two with errors about Point2f. Typed the two line program into a Windows tablet to check about problems related to the use of an NTFS file system an a dual boot configuration. Get the same UndefVarError: Point2f not defined .

---

<div class="post-metadata">

**Author:** ![sijo](https://avatars.discourse-cdn.com/v4/letter/s/da6949/32.png) [@sijo](https://discourse.julialang.org/u/sijo)\
**Post date:** [July 13, 2023, 6:33pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/10 "2023-07-13T18:33:49Z")

</div>

Could you run `]status -m` and post the output here?

---

<div class="post-metadata">

**Author:** ![Wulf](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wulf/32/204058_2.png) [@Wulf](https://discourse.julialang.org/u/Wulf)\
**Post date:** [July 13, 2023, 6:52pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/11 "2023-07-13T18:52:30Z")

</div>

import Pkg; Pkg.add(“Makie”); using Makie;  
FirstPoints = Observable(Point2)  
points = Observable(Point2f)

[3f19e933] + p7zip\_jll v17.4.0+0  
Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`  
Precompiling project…  
36 dependencies successfully precompiled in 181 seconds. 158 already precompiled. 1 skipped during auto due to previous errors.  
Observable(Point{2, Float32})

(ODEs) pkg\> status -m  
Status `/media/wulf/EVO500dataNtfs/wulf/science/applied/information_processing/create/code/julia/DifferentialEquations/ODEs/Manifest.toml`  
[621f4979] AbstractFFTs v1.4.0  
[1520ce14] AbstractTrees v0.4.4  
[79e6a3ab] Adapt v3.6.2  
[27a7e980] Animations v0.4.1  
[67c07d97] Automa v0.8.3  
[13072b0f] AxisAlgorithms v1.0.1  
[39de3d68] AxisArrays v0.4.6  
[fa961155] CEnum v0.4.2  
[49dc2e85] Calculus v0.5.1  
[d360d2e6] ChainRulesCore v1.16.0  
[a2cac450] ColorBrewer v0.4.0  
[35d6a980] ColorSchemes v3.21.0  
[3da002f7] ColorTypes v0.11.4  
[c3611d14] ColorVectorSpace v0.9.10  
[5ae59095] Colors v0.12.10  
[34da2185] Compat v4.7.0  
[187b0558] ConstructionBase v1.5.2  
[d38c429a] Contour v0.6.2  
[9a962f9c] DataAPI v1.15.0  
[864edb3b] DataStructures v0.18.14  
[e2d170a0] DataValueInterfaces v1.0.0  
[31c24e10] Distributions v0.25.98  
[ffbed154] DocStringExtensions v0.9.3  
[fa6b7ba4] DualNumbers v0.6.8  
[411431e0] Extents v0.1.1  
[c87230d0] FFMPEG v0.4.1  
[7a1cc6ca] FFTW v1.7.1  
[5789e2e9] FileIO v1.16.1  
[1a297f60] FillArrays v1.4.0  
[53c48c17] FixedPointNumbers v0.8.4  
[59287772] Formatting v0.4.2  
[b38be410] FreeType v4.0.0  
[663a7486] FreeTypeAbstraction v0.10.0  
[46192b85] GPUArraysCore v0.1.5  
[cf35fbd7] GeoInterface v1.3.1  
[5c1252a2] GeometryBasics v0.4.7  
[a2bd30eb] Graphics v1.1.2  
[3955a311] GridLayoutBase v0.9.1  
[42e2da0e] Grisu v1.0.2  
[34004b35] HypergeometricFunctions v0.3.20  
[2803e5a7] ImageAxes v0.6.10  
[c817782e] ImageBase v0.1.5  
[a09fc81d] ImageCore v0.9.4  
[82e4d734] ImageIO v0.6.6  
[bc367c6b] ImageMetadata v0.9.8  
[9b13fd28] IndirectArrays v1.0.0  
[d25df0c9] Inflate v0.1.3  
[a98d9a8b] Interpolations v0.14.7  
[8197267c] IntervalSets v0.7.4  
[92d709cd] IrrationalConstants v0.2.2  
[f1662d9f] Isoband v0.1.1  
[c8e1da08] IterTools v1.8.0  
[82899510] IteratorInterfaceExtensions v1.0.0  
[692b3bcd] JLLWrappers v1.4.1  
[682c06a0] JSON v0.21.4  
[b835a17e] JpegTurbo v0.1.2  
[5ab0869b] KernelDensity v0.6.7  
[b964fa9f] LaTeXStrings v1.3.0  
[8cdb02fc] LazyModules v0.3.1  
[2ab3a3ac] LogExpFunctions v0.3.24  
[1914dd2f] MacroTools v0.5.10  
[ee78f7c6] Makie v0.19.6  
[20f20a25] MakieCore v0.6.3  
[dbb5928d] MappedArrays v0.4.2  
[7eb4fadd] Match v1.2.0  
[0a4f8689] MathTeXEngine v0.5.6  
[978d7f02] MiniQhull v0.4.0  
[e1d29d7a] Missings v1.1.0  
[e94cdb99] MosaicViews v0.3.4  
[77ba4419] NaNMath v1.0.2  
[f09324ee] Netpbm v1.1.0  
[510215fc] Observables v0.5.4  
[6fe1bfb0] OffsetArrays v1.12.10  
[52e1d378] OpenEXR v0.3.2  
[bac558e1] OrderedCollections v1.6.0  
[90014a1f] PDMats v0.11.17  
[f57f5aa1] PNGFiles v0.3.17  
[19eb6ba3] Packing v0.5.0  
[5432bcbf] PaddedViews v0.5.12  
[69de0a69] Parsers v2.7.1  
[eebad327] PkgVersion v0.3.2  
[995b91a9] PlotUtils v1.3.5  
[647866c9] PolygonOps v0.1.2  
[aea7be01] PrecompileTools v1.1.2  
[21216c6a] Preferences v1.4.0  
[92933f4c] ProgressMeter v1.7.2  
[4b34888f] QOI v1.0.0  
[1fd47b50] QuadGK v2.8.2  
[b3c3ace0] RangeArrays v0.3.2  
[c84ed2f1] Ratios v0.4.5  
[189a3867] Reexport v1.2.2  
[05181044] RelocatableFolders v1.0.0  
[ae029012] Requires v1.3.0  
[79098fc4] Rmath v0.7.1  
[fdea26ae] SIMD v3.4.5  
[7b38b023] ScanByte v0.4.0  
[6c6a2e73] Scratch v1.2.0  
[efcf1570] Setfield v1.1.1  
[992d4aef] Showoff v1.0.3  
[73760f76] SignedDistanceFields v0.4.0  
[699a6c99] SimpleTraits v0.9.4  
[45858cf5] Sixel v0.1.2  
[a2af1166] SortingAlgorithms v1.1.1  
[276daf66] SpecialFunctions v2.3.0  
[c5dd0088] StableHashTraits v0.3.1  
[cae243ae] StackViews v0.1.1  
[90137ffa] StaticArrays v1.6.1  
[1e83bf80] StaticArraysCore v1.4.1  
[82ae8749] StatsAPI v1.6.0  
[2913bbd2] StatsBase v0.34.0  
[4c63d2b9] StatsFuns v1.3.0  
[09ab397b] StructArrays v0.6.15  
[3783bdb8] TableTraits v1.0.1  
[bd369af6] Tables v1.10.1  
[62fd8b95] TensorCore v0.1.1  
[731e570b] TiffImages v0.6.4  
[3bb67fe8] TranscodingStreams v0.9.13  
[981d1d27] TriplotBase v0.1.0  
[9d95972d] TupleTools v1.3.0  
[1cfade01] UnicodeFun v0.4.1  
[efce3f68] WoodburyMatrices v0.5.5  
[6e34b625] Bzip2\_jll v1.0.8+0  
[83423d85] Cairo\_jll v1.16.1+1  
[5ae413db] EarCut\_jll v2.2.4+0  
[2e619515] Expat\_jll v2.5.0+0  
[b22a6f82] FFMPEG\_jll v4.4.2+2  
[f5851436] FFTW\_jll v3.3.10+0  
[a3f928ae] Fontconfig\_jll v2.13.93+0  
⌅ [d7e528f0] FreeType2\_jll v2.10.4+0  
[559328eb] FriBidi\_jll v1.0.10+0  
[78b55507] Gettext\_jll v0.21.0+0  
[7746bdde] Glib\_jll v2.74.0+2  
[3b182d85] Graphite2\_jll v1.3.14+0  
[2e76f6c2] HarfBuzz\_jll v2.8.1+1  
[905a6f67] Imath\_jll v3.1.7+0  
[1d5cc7b8] IntelOpenMP\_jll v2023.1.0+0  
[aacddb02] JpegTurbo\_jll v2.1.91+0  
[c1c5ebd0] LAME\_jll v3.100.1+0  
[1d63c593] LLVMOpenMP\_jll v15.0.4+0  
[dd4b983a] LZO\_jll v2.10.1+0  
⌅ [e9f186c6] Libffi\_jll v3.2.2+1  
[d4300ac3] Libgcrypt\_jll v1.8.7+0  
[7add5ba3] Libgpg\_error\_jll v1.42.0+0  
[94ce4f54] Libiconv\_jll v1.16.1+2  
[4b2f31a3] Libmount\_jll v2.35.0+0  
[38a345b3] Libuuid\_jll v2.36.0+0  
[856f044c] MKL\_jll v2023.1.0+0  
[e7412a2a] Ogg\_jll v1.3.5+1  
[18a262bb] OpenEXR\_jll v3.1.4+0  
⌅ [458c3c95] OpenSSL\_jll v1.1.21+0  
[efe28fd5] OpenSpecFun\_jll v0.5.5+0  
[91d4177d] Opus\_jll v1.3.2+0  
[30392449] Pixman\_jll v0.42.2+0  
[460c41e3] QhullMiniWrapper\_jll v1.0.0+1  
⌅ [784f63db] Qhull\_jll v8.0.1003+0  
[f50d1b31] Rmath\_jll v0.4.0+0  
[02c8fc9c] XML2\_jll v2.10.3+0  
[aed1982a] XSLT\_jll v1.1.34+0  
[4f6342f7] Xorg\_libX11\_jll v1.8.6+0  
[0c0b7dd1] Xorg\_libXau\_jll v1.0.11+0  
[a3789734] Xorg\_libXdmcp\_jll v1.1.4+0  
[1082639a] Xorg\_libXext\_jll v1.3.4+4  
[ea2f1a96] Xorg\_libXrender\_jll v0.9.10+4  
[14d82f49] Xorg\_libpthread\_stubs\_jll v0.1.1+0  
[c7cfdc94] Xorg\_libxcb\_jll v1.15.0+0  
[c5fb5394] Xorg\_xtrans\_jll v1.5.0+0  
[9a68df92] isoband\_jll v0.2.3+0  
[a4ae2306] libaom\_jll v3.4.0+0  
[0ac62f75] libass\_jll v0.15.1+0  
[f638f0a6] libfdk\_aac\_jll v2.0.2+0  
[b53b4c65] libpng\_jll v1.6.38+0  
[075b6546] libsixel\_jll v1.10.3+0  
[f27f6e37] libvorbis\_jll v1.3.7+1  
[1270edf5] x264\_jll v2021.5.5+0  
[dfaa095f] x265\_jll v3.5.0+0  
[0dad84c5] ArgTools v1.1.1  
[56f22d72] Artifacts  
[2a0f44e3] Base64  
[8bf52ea8] CRC32c  
[ade2ca70] Dates  
[8ba89e20] Distributed  
[f43a241f] Downloads v1.6.0  
[7b1f6079] FileWatching  
[9fa8497b] Future  
[b77e0a4c] InteractiveUtils  
[4af54fe1] LazyArtifacts  
[b27032c2] LibCURL v0.6.3  
[76f85450] LibGit2  
[8f399da3] Libdl  
[37e2e46d] LinearAlgebra  
[56ddb016] Logging  
[d6f4376e] Markdown  
[a63ad114] Mmap  
[ca575930] NetworkOptions v1.2.0  
[44cfe95a] Pkg v1.9.2  
[de0858da] Printf  
[3fa0cd96] REPL  
[9a3f8284] Random  
[ea8e919c] SHA v0.7.0  
[9e88b42a] Serialization  
[1a1011a3] SharedArrays  
[6462fe0b] Sockets  
[2f01184e] SparseArrays  
[10745b16] Statistics v1.9.0  
[4607b0f0] SuiteSparse  
[fa267f1f] TOML v1.0.3  
[a4e569a6] Tar v1.10.0  
[8dfed614] Test  
[cf7118a7] UUIDs  
[4ec0a83e] Unicode  
[e66e0078] CompilerSupportLibraries\_jll v1.0.5+0  
[deac9b47] LibCURL\_jll v7.84.0+0  
[29816b5a] LibSSH2\_jll v1.10.2+0  
[c8ffd9c3] MbedTLS\_jll v2.28.2+0  
[14a3606d] MozillaCACerts\_jll v2022.10.11  
[4536629a] OpenBLAS\_jll v0.3.21+4  
[05823500] OpenLibm\_jll v0.8.1+0  
[efcefdf7] PCRE2\_jll v10.42.0+0  
[bea87d4a] SuiteSparse\_jll v5.10.1+6  
[83775a58] Zlib\_jll v1.2.13+0  
[8e850b90] libblastrampoline\_jll v5.8.0+0  
[8e850ede] nghttp2\_jll v1.48.0+0  
[3f19e933] p7zip\_jll v17.4.0+0  
Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`

This was a run without error. What I find strange is this:  
158 already precompiled. 1 skipped during auto due to previous errors.

in view of all my efforts to get clean new start.

---

<div class="post-metadata">

**Author:** ![sijo](https://avatars.discourse-cdn.com/v4/letter/s/da6949/32.png) [@sijo](https://discourse.julialang.org/u/sijo)\
**Post date:** [July 13, 2023, 7:50pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/12 "2023-07-13T19:50:33Z")

</div>

Ah I misunderstood, I thought you still had problems with `Point2f` (as I understand you are now on the current Makie and it works as expected). For the failed precompiled package I think you can run `]precompile` to get more information.

---

<div class="post-metadata">

**Author:** ![Wulf](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wulf/32/204058_2.png) [@Wulf](https://discourse.julialang.org/u/Wulf)\
**Post date:** [July 14, 2023, 1:52pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/13 "2023-07-14T13:52:09Z")

</div>

I do not regard the issue as resolved. Point2f fails apparently randomly. Presently I can proceed with my project using Point2. However at sometime this might be no more the case. Thanks for the ]precompile hint.

---

<div class="post-metadata">

**Author:** ![sijo](https://avatars.discourse-cdn.com/v4/letter/s/da6949/32.png) [@sijo](https://discourse.julialang.org/u/sijo)\
**Post date:** [July 14, 2023, 4:54pm UTC](https://discourse.julialang.org/t/undefvarerror-point2f-not-defined/101579/14 "2023-07-14T16:54:57Z")

</div>

It’s not surprising that `Point2f` fails when you use an outdated version of Makie, for example when you manually enforce an old version.

From your first message I understand that you had working code using `Point2f` and then without you changing anything, you started to get this error. I can see at least ~~two~~ three explanations:

- The original problem was actually something else, and while trying to fix it you downgraded Makie and ended up with this error.
- Something (some tool, or some command you ran somewhere…) caused Makie to be downgraded. Maybe this can happen when you install a package that (directly or through a dependency) requires an older Makie version.
- The code failed because it was executed using the wrong environment, for example maybe you had the global environment active in VsCode when you executed the code, instead of the project environment.

Does any of these explanations sound plausible to you?

Note that you can use the `]pin` command to fix `GLMakie` to some version, see `]help pin` for details.
