[Openmcl-devel] weird corruption of previously built MacOS application

Shannon Spires svs at bearlanding.com
Fri Mar 10 15:22:22 PST 2023


I've already started; it's all on my machine atm and I haven't put it on github yet. RME suggested using the ccl wiki so that's probably where I'll put it.

-SS

On March 10, 2023 3:11:27 PM MST, Tim McNerney <mc at media.mit.edu> wrote:
>Thanks guys!
>
>Anyone interested in curating these sorts of Q&As into a CCL FAQ?
>
>--Tim
>
>
>On Mar 10, 2023, at 16:30, dbm at refined-audiometrics.com wrote:
>
>
>FWIW,
>
>We had a similar experience about 2-3 years ago (ask Shanon about it). 
>
>
>It turned out that the Mac got confused by the existence of multiple 
>different copies of a vital dynlib, located in two separate directories. It 
>took us a while to track it down, but once we isolated the problem, and 
>removed all extraneous copies (/usr/local/lib vs app/var/lib etc) we got 
>things back to proper behavior. We settled by using our own var/lib folder 
>for all our vital dynlibs. I would suspect anything still living in 
>/usr/local/lib.
>
>
>The Mac has a bunch of nonsense (e.g., pre-binding) going on to attempt to 
>thwart dynlib injections. Perhaps that is your problem too?
>
>
>- DM
>
>On Mar 10, 2023, at 14:10, Arthur Cater <arthur.cater at ucd.ie> wrote:
>
>
>Furthermore, my application built in Feb 2019 now says
>Implementation Version is Version 1.12-dev (v1.12-dev.4-4-gd9740256) 
>DarwinX8664
>
>
>I don’t think I got v1.12 until December 2022. I don’t think it existed in 
>2019. And I haven’t tampered with my system clock.
>
>
>and the files-info shows
>
><Screenshot 2023-03-10 at 20.58.16.png>
>
>
>
>The strange app name is created by a build script I used. How could it 
>have been changed between Feb 2019 and May 2019? It seems I changed the 
>icon.
>
>From Terminal,
>
>ArthursSSD:Desktop arthur$ cd 14Feb2019GoblinApp.app/
>
>ArthursSSD:14Feb2019GoblinApp.app arthur$ ls -l
>
>total 1184
>
>drwxr-xr-x 6 arthur staff 192 14 Feb 2019 Contents
>
>-rw-r--r--@ 1 arthur staff 0 10 May 2019 Icon?
>
>ArthursSSD:14Feb2019GoblinApp.app arthur$ 
>
>
>
>
>On 10 Mar 2023, at 19:55, Arthur Cater <arthur.cater at ucd.ie> wrote:
>
>
>I have been running a ccl application that I built in 2019 using ccl11 on 
>my MacBook Pro running Mojave. Until a couple of hours ago this was working 
>(though a bit flaky, sometimes crashing for no obvious reason in a way it 
>didn’t back in 2019, and Search Files not working). I’d recently been 
>starting it up several times a day.
>
>Today I tried to build another one using ccl12, in a different folder. I 
>had made a backup copy of my program’s sources and fails etc. I changed my 
>build script to CD to the location of ccl12 instead of ccl11.
>
>So the new ClozureCL64 application doesn’t want to start. But listen, it’s 
>worse.
>
>The old application, with its ccl logical pathname set from the contents 
>of a variable in my ccl-init.lisp file thus (the goblin::*ccl-translations* 
>variable having been set before image creation)
>
>#+:goblin-app
>(progn
> (setf (logical-pathname-translations "ccl") goblin::*ccl-translations*)
> (defun goblin::format? () (cl-user::format?))
> (defun goblin::kreuger nil (cl-user::kreuger))
> (when goblin::*eval-queue-process*
> (process-kill (shiftf goblin::*eval-queue-process* nil))))
>
>
>now has problems starting up, which it didn’t earlier. I’m getting this
>
>; Warning: Interface file 
>#P"/Users/arthur/Desktop/darwin-x86-headers64/cocoa/constants.cdb" does not 
>exist, and the containing directory does not exist.
>; This may mean that that the "ccl:" logical-pathname host has not been 
>properly initialized. 
>; While executing: CCL::CDB-OPEN, in process Listener(35).
>; Warning: Interface file 
>#P"/Users/arthur/Desktop/darwin-x86-headers64/libc/constants.cdb" does not 
>exist, and the containing directory does not exist.
>; This may mean that that the "ccl:" logical-pathname host has not been 
>properly initialized. 
>; While executing: CCL::CDB-OPEN, in process Listener(35).
>; Warning: Interface file 
>#P"/Users/arthur/Desktop/darwin-x86-headers64/cocoa/vars.cdb" does not 
>exist, and the containing directory does not exist.
>; This may mean that that the "ccl:" logical-pathname host has not been 
>properly initialized. 
>; While executing: CCL::CDB-OPEN, in process Listener(35).
>; Warning: Interface file 
>#P"/Users/arthur/Desktop/darwin-x86-headers64/libc/vars.cdb" does not 
>exist, and the containing directory does not exist.
>; This may mean that that the "ccl:" logical-pathname host has not been 
>properly initialized. 
>; While executing: CCL::CDB-OPEN, in process Listener(35).
>Error: Foreign variable "NSCommandKeyMask" not found
>While executing: CCL::%LOAD-VAR, in process Listener(35).
>Type cmd-/ to continue, cmd-. to abort, cmd-\ for a list of available 
>restarts.
>If continued: Skip loading init file.
>Type :? for other options.
>
>1 > 
>
>
>
>How can my existing application possibly get interfered with in this way? 
>It happens even after restarting the computer. My mental model of the world 
>is under siege. Is there some mechanism that causes strings used in 
>pathnames to be quasi-magically linked across application bundles? I am 
>really puzzled.
>
>Arthur
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20230310/3f14ee2f/attachment.htm>


More information about the Openmcl-devel mailing list