Recent

Author Topic: FPC Lazarus on MacOs Catalina  (Read 1323 times)

fruitsalad

  • New member
  • *
  • Posts: 6
FPC Lazarus on MacOs Catalina
« on: August 09, 2019, 10:42:58 pm »
Hi all,

I am trying to install FreePascal on MacOS Catalina but it just won't install. "fpc-3.0.4a.intel-macosx.pkg" quits with "this package is not compatible.."

I also tried fpcupdeluxe-x86_64-darwin-qt5 and fpcupdeluxe-x86_64-darwin-cocoa, both apps won't start.

Tried to install Lazarus with cask, this quits with error that installer tried to install on system partition.

mischi

  • Full Member
  • ***
  • Posts: 122
Re: FPC Lazarus on MacOs Catalina
« Reply #1 on: August 10, 2019, 12:02:09 am »
fink packages for fpc and lazarus-cocoa should work.

skalogryz

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2267
    • havefunsoft.com
Re: FPC Lazarus on MacOs Catalina
« Reply #2 on: August 10, 2019, 12:16:40 am »
I also tried fpcupdeluxe-x86_64-darwin-qt5 and fpcupdeluxe-x86_64-darwin-cocoa, both apps won't start.
try to run from Terminal
Patron Cocoa Widgetset development https://www.patreon.com/skalogryz

fruitsalad

  • New member
  • *
  • Posts: 6
Re: FPC Lazarus on MacOs Catalina
« Reply #3 on: August 10, 2019, 10:29:48 am »
I also tried fpcupdeluxe-x86_64-darwin-qt5 and fpcupdeluxe-x86_64-darwin-cocoa, both apps won't start.
try to run from Terminal

LSOpenURLsWithRole() failed with error -10810 for the file /Users/lilalu/Downloads/fpcupdeluxe-x86_64-darwin-cocoa.app.

I'll look and try the fink solution/ suggestion. Thanks all for your help!

Jonas Maebe

  • Hero Member
  • *****
  • Posts: 659
Re: FPC Lazarus on MacOs Catalina
« Reply #4 on: August 10, 2019, 03:54:51 pm »
I am trying to install FreePascal on MacOS Catalina but it just won't install. "fpc-3.0.4a.intel-macosx.pkg" quits with "this package is not compatible.."
My guess is that the reason is that the package tries to install the FPC documentation under /Developer. Since Apple no longer puts anything there and since macOS 10.15 makes most of the root partition read-only, I guess it's no longer possible for user-created installers to create a directory there. But that's pure conjecture, I'd be happy if someone could find documentation on this (I don't have room to install macOS betas on my system).
« Last Edit: August 11, 2019, 07:37:35 pm by Jonas Maebe »

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1122
Re: FPC Lazarus on MacOs Catalina
« Reply #5 on: August 11, 2019, 09:04:50 am »
About fpcupdeluxe on Catalina.
Would you mind trying to codesign fpcupdeluxe ?
sudo codesign -f -s - --deep '/Users/lilalu/Downloads/fpcupdeluxe-x86_64-darwin-cocoa.app'

fruitsalad

  • New member
  • *
  • Posts: 6
Re: FPC Lazarus on MacOs Catalina
« Reply #6 on: August 11, 2019, 07:35:51 pm »
Thank you for your help.

There is no output after I enter the command and password. Still the same error when I try to open it from terminal.


fruitsalad

  • New member
  • *
  • Posts: 6
Re: FPC Lazarus on MacOs Catalina
« Reply #7 on: August 11, 2019, 07:38:19 pm »
I am trying to install FreePascal on MacOS Catalina but it just won't install. "fpc-3.0.4a.intel-macosx.pkg" quits with "this package is not compatible.."
My guess is that the reason is that the package tries to install the FPC documentation under /Developer. Since Apple no longer puts anything there and since macOS 10.5 makes most of the root partition read-only, I guess it's no longer possible for user-created installers to create a directory there. But that's pure conjecture, I'd be happy if someone could find documentation on this (I don't have room to install macOS betas on my system).

You could be right. It says something like package tries to write data/files on system partition (a loose translation of the german system message). Google also displayed similar problems with other application installer like VSCode etc.

trev

  • Full Member
  • ***
  • Posts: 198
Re: FPC Lazarus on MacOs Catalina
« Reply #8 on: August 12, 2019, 05:22:12 am »
> It says something like package tries to write data/files on system partition

Catalina's system partition is now in its own read-only volume. You cannot write to it even if you disable SIP from recovery mode.
o Lazarus v2.1.0 r61775, FPC v3.3.1 r42640, macOS 10.14.6 (with sup update), Xcode 10.3
o Lazarus v2.1.0 r61574, FPC v3.3.1 r42318, FreeBSD 12.0 (Parallels VM)
o Lazarus v2.1.0 r61574, FPC v3.0.4, Ubuntu 18.04 (Parallels VM)

fruitsalad

  • New member
  • *
  • Posts: 6
Re: FPC Lazarus on MacOs Catalina
« Reply #9 on: August 12, 2019, 08:08:38 am »
Is there any way I can get it to work on Catalina right now?

Jonas Maebe

  • Hero Member
  • *****
  • Posts: 659
Re: FPC Lazarus on MacOs Catalina
« Reply #10 on: August 12, 2019, 08:54:38 am »
> It says something like package tries to write data/files on system partition

Catalina's system partition is now in its own read-only volume. You cannot write to it even if you disable SIP from recovery mode.
I know, but that information is not detailed enough. Every part of the disk hierarchy obviously starts at he root of the disk, and I need documentation about which parts are writable and which parts are not. E.g., I did find somewhere that /usr/local is still fine, and /Users is obviously also fine. The question is whether macOS 10.15 maps creation of directories directly on /  to the system or user partition (given the error, I guess it is the system partition, but actual documentation would be very welcome), and whether /etc is still okay (and if not, where command line programs are supposed to put their default system wide configuration files).

fruitsalad

  • New member
  • *
  • Posts: 6
Re: FPC Lazarus on MacOs Catalina
« Reply #11 on: August 12, 2019, 05:02:00 pm »
I asked for further information about the file hierarchy in the apple developer forum.

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1122
Re: FPC Lazarus on MacOs Catalina
« Reply #12 on: August 12, 2019, 06:43:18 pm »
I got fpcupdeluxe (partly) running in a Catalina VirtualBox on Win10.
But with many permission problems.
Will keep you informed about any progress.

trev

  • Full Member
  • ***
  • Posts: 198
Re: FPC Lazarus on MacOs Catalina
« Reply #13 on: August 13, 2019, 03:50:55 am »
I know, but that information is not detailed enough. Every part of the disk hierarchy obviously starts at he root of the disk, and I need documentation about which parts are writable and which parts are not. E.g., I did find somewhere that /usr/local is still fine, and /Users is obviously also fine. The question is whether macOS 10.15 maps creation of directories directly on /  to the system or user partition (given the error, I guess it is the system partition, but actual documentation would be very welcome), and whether /etc is still okay (and if not, where command line programs are supposed to put their default system wide configuration files).

You cannot create root level directories in the normal sense because the system volume is SIP protected and read-only (you can disable SIP in recovery mode, and then in/out of recovery mode remount the system volume r/w but... not really sensible).

You need to use the (mounted, but hidden from Finder) data volume root (/System/Volumes/Data). However, to use that you need to use sudo or be the root user and this includes creating a directory in /usr/local/ (I just tested on Beta 3, Beta 5 update is downloading).

/etc is still linked to private/etc and requires sudo/root for write access.
o Lazarus v2.1.0 r61775, FPC v3.3.1 r42640, macOS 10.14.6 (with sup update), Xcode 10.3
o Lazarus v2.1.0 r61574, FPC v3.3.1 r42318, FreeBSD 12.0 (Parallels VM)
o Lazarus v2.1.0 r61574, FPC v3.0.4, Ubuntu 18.04 (Parallels VM)

Jonas Maebe

  • Hero Member
  • *****
  • Posts: 659
Re: FPC Lazarus on MacOs Catalina
« Reply #14 on: August 13, 2019, 08:15:05 am »
The installer package requires administrator/root permissions to install, since writing to /usr/local and /etc has always required such permissions. It sounds strange that if there is a user version of the root directory, that the installer does not simply redirect the package's installer to install there. In fact, macOS supports the concept of "union" mounts, which would seem perfect for this case:
Quote
             union   Causes the namespace to appear as the union of directories of the mounted filesystem with corresponding directories in the
                     underlying filesystem.  Lookups will be done in the mounted filesystem first.  If those operations fail due to a non-exis-
                     tent file the underlying directory is then accessed.
.

I cannot change the package to install the documentation in /System/Volumes/Data, since that does not exist on any other macOS version. As most, I could put it in /Users/Shared.