Can't keep Xojo running on Linux Mint

I’ve tried 2023r1 and the latest 2025r1. I can launch them both but they crash with “Unhandled Exception” when I try to build or run and crash without a warning when I create a new project. I extracted the compressed file to several different places, to allow for permissions errors, but no change. I filed to bug reports. The latest error message is:
ojo: /var/lib/go-agent/pipelines/LLVM/source/include/llvm/Support/Casting.h:255: typename cast_retty<X, Y *>::ret_type llvm::cast(Y *) [X = llvm::FunctionType, Y = llvm::Type]: Assertion `isa(Val) && “cast() argument of incompatible type!”’ failed.
Aborted (core dumped)

I followed the instructions about getting gtk3 and dependent packages. I got no errors installing any (though the names of some files seem to have changed).

This is my environment:
System:
Kernel: 5.15.0-139-generic x86_64 bits: 64 compiler: gcc v: 11.4.0 Desktop: Cinnamon 5.6.8
tk: GTK 3.24.33 wm: muffin vt: 7 dm: LightDM 1.30.0 Distro: Linux Mint 21.1 Vera
base: Ubuntu 22.04 jammy
Machine:
Type: Desktop System: Dell product: OptiPlex 7050 v: N/A serial: Chassis:
type: 3 serial:
Mobo: Dell model: 0XHGV1 v: A00 serial: UEFI: Dell v: 1.27.0
date: 09/18/2023
CPU:
Info: quad core model: Intel Core i7-7700 bits: 64 type: MT MCP smt: enabled arch: Kaby Lake
rev: 9 cache: L1: 256 KiB L2: 1024 KiB L3: 8 MiB
Speed (MHz): avg: 4105 high: 4198 min/max: 800/4200 cores: 1: 4097 2: 4113 3: 4080 4: 4077
5: 4079 6: 4198 7: 4100 8: 4099 bogomips: 57600
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx

Thank you for your consideration,
fritz

Are you using Xorg or Wayland as your display server? If Wayland, try using Xorg.

Assertions like that should be reported to Xojo. That’s something you should never see and usually indicates a framework bug.

I reported it.
Thanks
fritz

Arthur
I’m using Linux Mint 21 Cinnamon 5 so no Wayland. I read about installing Wayland but I will probably hold off on trying it. I think version 6 will make that easier. I assume you know more about this than I do, so if I’m using xorg now, what do you think I should do?
Thanks
fritz

Not 100% sure of the next steps. I did some searching in the forums and online for Mint / Linux related issues, but can’t find a good answer. Have you tried building a console application (or opening one of the console examples) and see if that works?

Also, Eugene Dakin has a youtube video:

Install Xojo on Ubuntu OS with VirtualBox on Windows 11

If you go to the 6:30 mark, it looks like the steps that he performs (in the virtual machine) to install Xojo would parallel some of what you are doing on a physical machine. It may be close enough to your setup to help with troubleshooting.

I can attest that getting Xojo working on Linux can be challenging. We have been using it on Windows for years, and also using Linux for years. However, the initial forays into using Xojo on Linux were extremely… “challenging”. Hopefully you can get it working.

Arthur

I will check out the video first thing in the morning. In the meantime, I wanted to answer your question about trying a console app. For every app I tried, I got no farther than the initial IDE window. I tried web, console and desktop, but almost always it died as soon as I clicked “open” for a preexisting example or “new” for a new project. I got to the point of “run” a couple times but it always died. I reported this on the bug site. I suspect I got different results because I tried various ways of installing and two different Xojo versions. Some app dev environments–like C, Flutter and PureBasic, freak out when they can’t find their compilers and libraries, but they say so right up front. I figured maybe Xojo is having a pathing problem like that but it can’t tell you. But at some point in the process I was getting a lot of LVVM errors, which I figured just couldn’t be fixed with the dependencies (and information) that I had. That’s when I called it quits till new data could be acquired.

It’s somewhat heartening to hear that others more experienced than myself have experienced “challenges” with Linux. And it’s also great to know that there are other folks like you ready to help out.

Thanks for the help so far.
I’ll get back to you after I learn what I can from this video.
fritz

Arthur
I went through Eugene’s video and followed the steps. A couple of the packages weren’t among the ones I’d already downloaded, and that plugin permissions tip was great, but no luck on my end. I think the people running Ubuntu would be greatly benefited. But I guess Mint is different enough to be missing some small thing nobody’s found yet.

Yet, I appreciate his video, because if I ever install Ubuntu, I am certainly going to try it again. And I appreciate you pointing me towards it, because–as you said–there’s not a lot out there on the mint side. Great news is I got Flutter, PureBasic and the LAMP stack running, and the network shares, so I’m very pleased overall with my otherwise cheap new server.

Thanks very much for everything you’ve done.
fritz

Arthur

I deleted everything this morning including all previous package downloads and used Eugene’s installation via the Debian installer after all the updates were installed via apt-get and got quite a bit farther (as of this afternoon). I can open an example (tried console and desktop selecting Linux) and even save it. As long as I don’t try to Run or Build everything stays open. Then Xojo closes. If I open via the console it shows the same LVVM error I reported previously. The GUI reports nothing.

So that’s progress of a sort.

Thank you
fritz

Hello @friedrich_boettger,

One suggestion may be to check for libraries that may not be installed for Xojo. Here is how to check for library dependencies and to determine if they are installed:

  1. Open a terminal and change directory (cd) to the Xojo binary
  2. Type the following command ldd Xojo
  3. A list of libraries will be shown on each line. If there is a line that says something like libpmwrtfile.so => not found, then this means a library to run Xojo is missing. Search for the library online and install the library, with a command like: sudo apt install libpmwrtfile
  4. Reboot Ubuntu and start Xojo again and see if there are any errors.
  5. There may be more than one library which is missing.

Warm regards.

Eugene
Thank you for this tip, which I had no idea existed.
I append the results to the end of this email, even though there’s nothing labelled ‘not found’. It’s at the end so you can ignore it. I know so little about this environment I’m not ruling anything out.

To summarize, I’m using Linux Mint, which I was assuming was enough like Ubuntu that it wouldn’t matter, but in this case that’s what I got for assuming. I can launch the IDE and type stuff and even save, but neither Run nor Build will work. I am signed in to Xojo and I’m using the 2023r1 build, which is the last I’m entitled to. I have a license for web, desktop and console and I can build on my M1 Mac and my I7 Windows laptop and even on my new Surface Snapdragon.

Thank you
fritz

List of installed dependencies below:

linux-vdso.so.1 (0x00007fffb7da2000)
XojoGUIFramework64.so => /opt/xojo/xojo2023r1/./Xojo Libs/XojoGUIFramework64.so (0x00007efce0cc5000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007efce0a87000)
libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007efce025e000)
libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007efce0157000)
libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007efce0145000)
libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007efce00dc000)
libatk-1.0.so.0 => /lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007efce00b2000)
libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007efce00a6000)
libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007efcdff7e000)
libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007efcdff4e000)
libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007efcdfd74000)
libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007efcdfd12000)
libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007efcdfbd8000)
libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007efcdfa98000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007efcdf9b1000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007efcdf9ac000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007efcdf9a7000)
libgthread-2.0.so.0 => /lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007efcdf9a0000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007efcdf99b000)
libunwind.so.8 => /lib/x86_64-linux-gnu/libunwind.so.8 (0x00007efcdf980000)
libunwind-x86_64.so.8 => /lib/x86_64-linux-gnu/libunwind-x86_64.so.8 (0x00007efcdf963000)
libc++.so.1 => /opt/xojo/xojo2023r1/./Xojo Libs/libc++.so.1 (0x00007efcdf400000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007efcdf943000)
/lib64/ld-linux-x86-64.so.2 (0x00007efce3563000)
libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007efcdf93a000)
libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x00007efcdf926000)
libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007efcdf91e000)
libatk-bridge-2.0.so.0 => /lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x00007efcdf8e6000)
libepoxy.so.0 => /lib/x86_64-linux-gnu/libepoxy.so.0 (0x00007efcdf7b1000)
libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007efcdf3e2000)
libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007efcdf3c7000)
libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007efcdf2f8000)
libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007efcdf2ae000)
libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007efcdf2a9000)
libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007efcdf29a000)
libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007efcdf28e000)
libXcomposite.so.1 => /lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007efcdf289000)
libXdamage.so.1 => /lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007efcdf284000)
libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007efcdf23d000)
libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x00007efcdf233000)
libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007efcdf22e000)
libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007efcdf21b000)
libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x00007efcdf206000)
libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x00007efcdf1fb000)
libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007efcdf150000)
libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007efcdf088000)
libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007efcdf04b000)
libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007efcdf046000)
libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007efcdf01c000)
libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007efcdf00d000)
libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x00007efcdf000000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007efcdefe4000)
libjpeg.so.8 => /lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007efcdef61000)
libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007efcdef1d000)
libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007efcdeef1000)
libffi.so.8 => /lib/x86_64-linux-gnu/libffi.so.8 (0x00007efcdeee4000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007efcdee6e000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007efcdee41000)
libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007efcdedf3000)
libatspi.so.0 => /lib/x86_64-linux-gnu/libatspi.so.0 (0x00007efcdedb9000)
libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007efcded92000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007efcded61000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007efcded56000)
libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007efcded4d000)
libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007efcded3f000)
libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007efcded39000)
libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007efcded31000)
libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007efcdecf8000)
libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007efcdec61000)
libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007efcdeb9a000)
libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007efcdeb77000)
libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007efcdeb5f000)
libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007efcdea8e000)
liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007efcdea6e000)
libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007efcdea63000)
libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007efcde925000)
libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x00007efcde918000)
libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007efcde8f0000)

Hi @friedrich_boettger,

I would suggest that you use Ubuntu, as Linux Mint and Ubuntu are similar, they have differences. Although Mint is essentially running Ubuntu under-the-hood, it has mint-specific tools and tweaks, which is where the problem is likely happening because of these enhancements.

There are many large companies which support or use Ubuntu, such as Microsoft, Amazon (AWS), Dell, Google, and more. Linux Mint is not directly supported by major companies, which is likely the reason for some of these issues that make the Linux version kind-of-work with Mint. If you enjoy Linux Mint, feel free to use it, although you will need to rewrite programs and fine-tune many aspects of a language because of the uniqueness of Linux Mint. Linux Mint is good for a home enthusiast, and Ubuntu recommended for enterprise-grade support.

When I attempt to install Linux Mint on a Virtual Machine, its not listed/supported, which means there is not enough demand/support for this version of Linux.

Today, I installed a new version of virtual box (version 7.1.8r168469), and Ubuntu (24.04.2 LTS), and downloaded a trial version of Xojo (2025 r1.1 Ubuntu x86-64).

I used the command sudo dpkg -i xojo2025r11_arm64.deb and Xojo IDE installed and ran some simple programs that I tested.

I didn’t need to install anything else, it just worked. Could I ask you to try Ubuntu with Xojo? Let me know what happens :slight_smile:

Eugene

I couldn’t get Ubuntu (my first choice) on this particular box, so I settled for Mint. I’m now using it as a file and web and database server. I have PHP and Node and VS Code and Gimp and some audio video stuff on it just for fun. So I guess until another one of these boxes falls into my lap, I have no choice but to get really familiar with Mint–though your reservations are entirely justified, I have plenty of other Windows and Mac laptops around to use Xojo on, but at the moment I’m enjoying the challenge of doing web and network stuff on Linux, It’s at least comforting to know that the reason (I presume) that I can’t make Mint work with Xojo is that it’s officially not supported. So I’m not going to continue banging my head against the wall.

Thank you very much for your time and trouble. When a new Ubuntu opportunity comes my way, I will do nothing before consulting your video And I will let you know how it goes.

fritz

1 Like

I have been following this thread with interest. I have had a Mint computer up and running with Xojo for a while now, but it is currently running on 22.1, So this morning, I grabbed an older Core I7 test machine (4th generation Core I7, 16GB RAM. I did not read anywhere in the thread the amount of RAM on your computer. Perhaps I just missed it. I assume that you have enough.

I installed Mint 21.1 on the test computer. I did not immediately install updates. By the way, the UEFI boot image on the Mint 21.1 ISO is now outdated. I had to turn off trusted computing in the BIOS to install and run Mint 21.1. (It is an issue also present in other distributions, even some recent ones such as MX Linux 23.6.) I downloaded the deb package and installed Xojo with GDebi. The installation went without issues. Fired up Xojo and created a “Hello World” web project. I did not apply my license. Ran the test program. Firefox launched, the application ran without a problem. I installed the 140 and some updates . Ran Xojo again, ran the test program again. No problem. Xojo runs just fine on Linux Mint 21.1.

There appears to be some issue specific to your computer. Perhaps something to do with the installation of Linux Mint, or of Xojo. Hard to tell with what we know.

Which brings us back to @Arthur_Couture 's hypothesis. Perhaps your computer is running Wayland. An unlikely hypothesis, because you should know that you enabled it. Still, it is not very difficult to test. Open a terminal and run the following command:

echo $XDG_SESSION_TYPE

It is important to type the uppercase letters as such. the command does not work in lower case. The terminal should return either “x11” or “Wayland” (or “tty” if you don’t have a display manager, but with a Mint standard install, you do). That question will then be cleared for good.

Perhaps, a complete re-install of Mint 21.1 might be in order. Others may not agree with me here, but I often prefer to cut the Gordian Knot instead of spending an inordinate amount of time trying to fix an obscure issue. If you have any data on the computer that you wish to keep, make sure to back it up first. I would reinstall Mint using the entire disk. Or use a Mint 22.1 ISO to install, which has an updated UEFI boot image that will nor require you to turn off trusted computing in the BIOS. Xojo runs fine on Mint 22.1 on another test machine here also (a 10th gen Core I7 with 64GB RAM).

Hoping that this may help.
LD

Louis

Thank you for your interest. I have 32 gb of RAM, one NVME SSD (512 GB) and one NVME HD (2TB), so even though the processor’s an old I7 (2017), the machine can get out of its own way. I had trouble too with the BIOS, but I cleared that up (at least to the extent that it runs).

I would reinstall from scratch, but the machine is now in production as a web, database and file server. If I come across another one like it, I’ll try Linux Mint first, just to test it out with a newer version of Mint, and then I’ll try Ubuntu because it’s supposed to be supported and because Eugene made a pretty comprehensive video on the subject which worked for him.

I’m not running Wayland. I am anxious to try the whole thing out again, but not so anxious I’m going to redo all the server stuff over.

I appreciate all your suggestions. It’s good to know somebody can do it anyway. If possible, I’m going to hedge my bets with a newer unit.

peace
fritz