DSheirer / sdrtrunk

A cross-platform java application for decoding, monitoring, recording and streaming trunked mobile and related radio protocols using Software Defined Radios (SDR). Website:
GNU General Public License v3.0
1.59k stars 256 forks source link

build errors with macOS 12.3.1 aarch64 0.5.0-beta.2 #1204

Open grantbarrett opened 2 years ago

grantbarrett commented 2 years ago

Thanks, Denny, for this fantastic software. I hope this report is useful.

I've noted, as others have, that the osx-aarch64 build on the 0.5.0-beta.2 release does not run (although the osx-x86_64 runs fine in Rosetta 2). So I've been trying to build it from source, to no avail.

The main issue is more than 7700 errors, including many "error: cannot find symbol" messages (likely representing the same problem).

I've retried the build using JDK 11, 17, and 18, and gradle 6.0, 7.0, and 7.4.2 (which is the latest) and the build has failed each time.

I've published the build scan for JDK 17 and gradle 7.4.2:

https://gradle.com/s/wobrfee3qpjjm

grantbarrett commented 2 years ago

As noted in the Google Group by Carl, the solution is to use a JDK that includes JavaFX.

Download your appropriate full JDK installer at https://bell-sw.com/pages/downloads/. Click the dropdown where it says "Standard JDK" and you will see the "Full JDK" option.

You can also install the Liberica JDK with Homebrew, which is what I ended up doing:

brew tap bell-sw/liberica brew install --cask liberica-jdk18-full

Of course, although it now successfully builds, running the build behaves just like the build in the Github release, where it throws the libusb4java.dylib error, which is outside the scope of this issue.