Running the app from the console is less helpful than examining the logs from within the app! However, I do have multiple executable files in the folder: there's also a little install script which sets up a .desktop file, and it turns out that itch is running that. Delete it, and "Launch" gives a choice of the right executable or the two Unity shared libraries sitting alongside it.
So, problem diagnosed, but how does the app decide which executable file to run, and is there any way to tell it what the right one is?