freecol icon indicating copy to clipboard operation
freecol copied to clipboard

mac app is missing executable

Open LongboatAline opened this issue 6 years ago • 7 comments

Downloaded the mac.tar.bz2 of

  • Nightly Release: 2018-04-25
  • Nightly Release: 2018-04-07
  • Nightly Release: 2018-03-22 did not try others
open Downloads/FreeCol.app/
The application cannot be opened because its executable is missing.

So it seems this archive is incomplete.

A brief try on the .jar showed it unplayable on a notebook - while cursor control did work for n/s/w/e, specific keys for ne,se,sw,nw are missing, and remapping them had no effect.. G for Goto didn't work either, so it looks like movement is restricted to cardinal directions.

LongboatAline avatar Apr 18 '18 17:04 LongboatAline

The difference seems to be in the file Contents/Info.plist. Whereas 0.11.6 refers to Java, the Nightly release employs JavaX which, at least on my System running 10.11.6 doesn't seem to be found. It however works to use the Info.plist from Version 0.11.6, and to create the soft link MacOS/FreeCol pointing to /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub

LongboatAline avatar Apr 28 '18 12:04 LongboatAline

Hmm, ok, thanks. I'll take a look at that.

HighwayofLife avatar Apr 28 '18 22:04 HighwayofLife

Just an FYI on this. I don't think there has ever been a Mac OSX developer. At least not for 10+ years.

Calebrw avatar Jul 13 '18 23:07 Calebrw

This issue is the one holding 0.12 milestone, isn't it ?

https://github.com/FreeCol/freecol/milestone/1

paulvi avatar Dec 04 '18 17:12 paulvi

This issue is the one holding 0.12 milestone, isn't it ?

https://github.com/FreeCol/freecol/milestone/1

AFAIK, there are other issues, but I'm not up to date myself on which those are currently. There is some older talk on the sourceforge mailing list and most of the bugs are reported in tickets there. https://sourceforge.net/p/freecol/mailman/freecol-developers/ https://sourceforge.net/p/freecol/bugs/

wintertime avatar Dec 06 '19 16:12 wintertime

Using universalJavaApplicationStub seems to have addressed this issue.

Trying out the nightly realease as of 2020-05-26 the configuration seems to have problems in finding its jar file, though:

open FreeCol.app
LSOpenURLsWithRole() failed with error -10810 for the file /Applications/Games/FreeCol.app.

Calling the startup script directly gives a less ominous error:

./universalJavaApplicationStub: line 184: 31m: command not found
...
Error: Could not find or load main class net.sf.freecol.FreeCol
Caused by: java.lang.ClassNotFoundException: net.sf.freecol.FreeCol

The 31m: command not found warnings are a hint to the cause of the problem: in Info.plist, the ClassPath is returning an array, listing the contents of the directories containing the jars. if the ClassPath is set to a string pointing at the Freecol.jar file, startup is successful.

From my modified Info.plist file

      <key>ClassPath</key>
      <string>$JAVAROOT/FreeCol.jar</string>

PS: you might also consider updating the universalJavaApplicationStub - it is currently at 3.0.6 compared to the 2.0.2 currently in use.

Thanks a lot for addressing this issue and still supporting the MacOS X platform!

LongboatAline avatar Jun 02 '20 16:06 LongboatAline

Problem 1: I know nothing about mac packaging.

Problem 2: There is no Info.plist file in our source tree, that must be being generated by our mac build process... see Problem 1. I am to make changes here, but it will need to be in terms of something I can see in our sources. Please advise.

Progress: however the universalJavaApplicationStub is present in the source tree, and has now been updated (git.e9158e0).

mpope042 avatar Jun 06 '20 03:06 mpope042