Starting Xojo app on Linux

I managed to install Ubuntu on VMWare. Did a first build of a smaller project of mine for Linux on the Mac. Copied the folder to Ubuntu. But how do I start the app? Tried to do a Run with the context menu. But nothing happens. Should the app run out of the box?

Put your app directory under your user directory and then from shell (or you can setup a cron job)
/home/JohnDo/appdir/./app

You should first verify all your System Requirements are set up.

Did you build the app as 64-bit or 32-bit? Is your Ubuntu 64-bit or 32-bit? Is this a desktop app or a console app?

Generally for a desktop app you would just double-click the app just as you would on Windows or Mac. Although you may have to ensure the “Executable” flag is set for the app as sometimes that can get cleared when copying stuff to a VM. Start console apps from the Terminal. Navigate to the folder and type its name like this:

./MyApp

If you leave off the “./” Linux will try to find your app in the system path and will report it as not found.

You can also start a desktop app from the terminal which might output additional debugging information.

But you probably want to start with a simple “Hello, World” Linux app to verify requirements and everything else. Once that app is working you can try your app.

If your app fails to start, you’ll want to check for Declares or invalid paths that need to be adjusted with conditional compilation.

Thanks, Paul. I’ll try your suggestions tomorrow.

I’ll also add that if you’re new to Linux you might find Linux Mint a bit easier to work with than Ubuntu.

Right click the App and select Properties. Then click the Permission Tab, confirm that “Execute” is checked. If you compiled on Windows or Mac, it will not be.

(This is on Linux Mint)

Thanks, Douglas, I will check the permissions.

@Paul Lefebvre : the number of distributions for Linux is crazy. Even for Mint there are 3 versions.

In what way is Mint “easier to work with” than Ubuntu? In VMWare Mint doesn’t react on anything. Anyways. Ubuntu it is for now.

“Hello World” works fine. Executable bit of my helper app is set. Ah, well, then I will need to do the Remote Debugger to see where the problem is.

Hi Bea,

you will need the right version of Remote Debugger (i.e. 32 or 64-bit) depending on the system you have installed.

Personally, I have put the whole “Remote Debugger Desktop” on my Linux (Ubuntu) Desktop. But then, one problem arises: how to name the folder holding your project’s data (which will not be transferred between platforms). Honestly, even after all those years, I still do not know how to access resources or which path to use when loading distributed libraries.

It would be so nice if Xojo give a definitive guide to that

Yes, there are a huge number of distributions. But don’t think of them as “versions”. The Linux is all the same. At least the part that matters. What is changing is the user interface. Even that doesn’t work that differently from each other. For the most part, all of these distributions seems to only change the default applications and libraries that are installed.

Mint includes more default libraries than Ubuntu. Mint is a bit less concerned for being totally “free open source” than Ubuntu is, and that’s not that different.

It’s a thing to celebrate that there are so many distributions. It’s fun to try them out, but I often feel disappointed that they aren’t more different once I actually take them for a spin.

I use Linux Mint Cinnamon 64-bit, which is what we recommend. I see that Mint 19 is out so I guess I need to give that one a try as I’m still set up with Mint 18 in VMware Fusion. Ubuntu is good too; I guess I just find Mint easier to work with and it seems to work fine with VMware after I install the open-vmware tools (open-vm-tools). Every Linux distro has its own odd little idiosyncrasies, especially if you’re mostly used to Mac or Windows.

Wouldn’t you use a Copy Files Build Step to copy this stuff to the Resources folder and access it from there?

After some difficulty I have Linux Mint 19 (which calls itself Cinnamon) running in a VirtualBox VM. But the Xojo IDE has a generic executable icon rather than the Xojo icon, and the OS doesn’t quite believe it’s an executable - I can’t put it in the Dock or whatever it’s called. And where are applications supposed to be put, anyway?

@Tim Streater : ha, I’m not the only one who needs an idiots guide to Linux. /usr/bin or something I’m told by Goggle.

I then Goggled “make Linux app” and found https://appimage.org/ . But I first need to get my app running on Linux. It’s one main window, a couple of controls, preferences, SQLite and a socket. That can’t be too complicated - famous last words.

Then I decided I didn’t like the theme I was using, or any of those on offer, so I used the theme manager or whatever to download another. But it doesn’t show up anywhere so I can apply it. Anyway. I suppose these issues will be shortlived so I can get on with adapting my app to Linux, which I know I will have to do as some small test apps have shown up the same problem that I have on Windows: the StatusChanged event doesn’t work.

The other thing that’s irritating is, how do I keep the IDE running when I close the project window? Even in Windows if I can get it in the Dock then it stays active when the last project window is closed, and offers the “select a project” pane when activated at the Dock. Under Mint, so far, the IDE exits and I have to restart it. Do you have this issue?

I’m not planning to install Xojo on Linux. For VMWare/Virtualbox work remote debugging seriously rocks.