Hi Alex and all,

We should rationalize our calls to subroutine grid2deg() to make them acceptable to the increasingly fussy versions of gfortran. This will not be done in time for WSJT-X 2.5.4, which will be released very soon, but probably in the next release after that.

        -- 73, Joe, K1JT

On 12/27/2021 7:16 PM, Alex Lelievre via wsjt-devel wrote:
Unfortunately I just discovered a bug that crashes WSJT-X running native on Apple M1 when you double-click a call in the Band Activity window.

This is the error in case anyone has seen something similar:

At line 1 of file /Users/alex/wsjtx-debug/wsjtx-prefix/src/wsjtx/lib/grid2deg.f90 Fortran runtime error: Actual string length is shorter than the declared one for dummy argument 'grid0' (3/6) libc++abi: terminating with uncaught exception of type boost::wrapexcept<boost::exception_detail::error_info_injector<boost::log::v2_mt_posix::system_error> >: Failed to set TLS value: Invalid argument
Process 94887 stopped
* thread #10, name = 'QThread', stop reason = signal SIGABRT
     frame #0: 0x00000001b10499b8libsystem_kernel.dylib`__pthread_kill + 8
libsystem_kernel.dylib`__pthread_kill:
-> 0x1b10499b8 <+8>:  b.lo   0x1b10499d8               ; <+40>
0x1b10499bc <+12>: pacibsp
0x1b10499c0 <+16>: stp    x29, x30, [sp, #-0x10]!
0x1b10499c4 <+20>: mov    x29, sp
Target 0: (wsjtx) stopped.

alex
K6LOT

On Dec 27, 2021, at 1:11 PM, Alex Lelievre <a...@foinc.com <mailto:a...@foinc.com>> wrote:

I wanted to post a progress update to getting WSJT-X built and running natively on Apple M1 hardware.

Today I managed to get FT8 to work natively on Apple M1 with version 2.5.3.  Previously this was crashing due to a compiler issue (stacks on M1 are not executable).  The gcc community posted a fix for this issue a few days ago and amazingly now the Jt9 process runs without crashing!!  Amazing!

There are still some remaining issues that I had to fix up manually for those that are interested:
- I had to stub __chkstk_darwin()
- I had to replace libgcc_s.1.1.dylib with libgcc_s.dylib (and then renamed to libgcc_s.1.1.dylib to cheat)…  This is necessary otherwise ___addtf3 is an unresolved import and causes WSJT-X to crash on launch.
- I had to manually sign the executable to run on Monterey 12.1.

If anyone else is interested in building a native version of WSJT-X for Apple M1 please let me know and I will post my instructions…  Once those issues listed above are resolved, I can look into getting this build into the official releases (which I have no idea how to do).

Also just wanted to express my deepest condolences to Bill Somerville’s family and friends.  If it wasn’t for his help I would never have been able to get the code ported over to Apple M1.  He helped me learn Fortran and answered my deluge of questions with enthusiasm and humor.  I will truly miss his support.  RIP

alex
K6LOT



On Aug 27, 2021, at 10:25 AM, Alex Lelievre <a...@foinc.com <mailto:a...@foinc.com>> wrote:

Good thing I didn’t see that Qt blog article otherwise I wouldn’t have tried to build for arm64.  ;-)
I was holding out until I saw that most of brew now supported the M1.

I am still having some issues with the jt9 submodule crashing so I have some more work to do getting the fortran code to play nice with gfortran 11.x. I suspect I can fix this crash if I quiet some warnings about exceeding stack sizes and/or reentrancy warnings…

<Screen Shot 2021-08-27 at 8.46.41 AM.png>

Alex

[snip]



_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to