jrincayc / ucblogo-code

Berkeley Logo interpreter
https://people.eecs.berkeley.edu/~bh/logo.html
GNU General Public License v3.0
190 stars 34 forks source link

M1 Macs: UCBLogo Keeps Crashing #158

Closed bzuruce closed 1 year ago

bzuruce commented 1 year ago

When I launch ucblogo on my m1 macbook pro (2020), I see this:

-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               UCBLogo [81116]
Path:                  /Applications/UCBLogo.app/Contents/MacOS/UCBLogo
Identifier:            UCBLogo
Version:               0.0.1d1
Code Type:             X86-64 (Translated)
Parent Process:        launchd [1]
User ID:               501

Date/Time:             2023-02-15 07:13:00.3325 -0800
OS Version:            macOS 13.2 (22D49)
Report Version:        12
Anonymous UUID:        AFA2DD3E-AC4C-CDA9-9B1A-2C5E15FA50C5

Sleep/Wake UUID:       BE29BE75-67DA-4D8D-8045-3A5C81ECAFC2

Time Awake Since Boot: 110000 seconds
Time Since Wake:       1345 seconds

System Integrity Protection: enabled

Crashed Thread:        0

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000

Termination Reason:    Namespace DYLD, Code 1 Library missing
Library not loaded: /usr/local/opt/jpeg-turbo/lib/libjpeg.8.dylib
Referenced from: <C699AF6F-5D6D-3678-ABC1-F3C9269B8BF4> /Applications/UCBLogo.app/Contents/MacOS/UCBLogo
Reason: tried: '/usr/local/opt/jpeg-turbo/lib/libjpeg.8.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/jpeg-turbo/lib/libjpeg.8.dylib' (no such file), '/usr/local/opt/jpeg-turbo/lib/libjpeg.8.dylib' (no such file), '/usr/local/lib/libjpeg.8.dylib' (no such file), '/usr/lib/libjpeg.8.dylib' (no such file, not in dyld cache)
(terminated at launch; ignore backtrace)

Thread 0 Crashed:
0   Rosetta Runtime Routines           0x1031a29a8 ???
1   <translation info unavailable>         0x10323790c ???
2   dyld                                   0x202d17d07 abort_with_payload_wrapper_internal + 82
3   dyld                                   0x202d17d39 abort_with_payload + 9
4   dyld                                   0x202c9f1e1 dyld4::halt(char const*) + 375
5   dyld                                   0x202c9c660 dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 4502
6   dyld                                   0x202c9b281 start + 2289

Thread 1:: com.apple.rosetta.exceptionserver
0   runtime                             0x7ff7ffe72614 0x7ff7ffe6e000 + 17940
1   runtime                             0x7ff7ffe7e530 0x7ff7ffe6e000 + 66864
2   runtime                             0x7ff7ffe7ff30 0x7ff7ffe6e000 + 73520

Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000000006   x1: 0x0000000000000001   x2: 0x00000003092779e0   x3: 0x0000000000000073
    x4: 0x00000003092775e0   x5: 0x0000000000000000   x6: 0x636f6c2f7273752f   x7: 0x000000206f2f6c61
    x8: 0x00000003092775e0   x9: 0x0000000000000000  x10: 0x0000000000000073  x11: 0x00000003092775e0
   x12: 0x0000000000000073  x13: 0x00000003092779e0  x14: 0x0000000000000001  x15: 0x0000000000000006
   x16: 0x0000000000000209  x17: 0x0000000000000000  x18: 0x800000010b203b80  x19: 0x0000000103198000
   x20: 0x00000000000007ff  x21: 0x000000010b208fa0  x22: 0xffffffffffffffff  x23: 0x00000001031a297c
   x24: 0x0000000202d17d07  x25: 0x00000001031a2248  x26: 0x00000001032355f8  x27: 0x0000000000000000
   x28: 0x0000000202cfeb4a   fp: 0x000000002c000000   lr: 0x000000010323790c
    sp: 0x000000010b203b80   pc: 0x00000001031a29a8 cpsr: 0x80001000
   far: 0x0000000103237000  esr: 0x56000080  Address size fault

Binary Images:
               0x0 - 0xffffffffffffffff ??? (*) <00000000-0000-0000-0000-000000000000> ???
       0x202c95000 -        0x202d2cfff dyld (*) <270c4224-a38f-3a22-9ba9-95968f487738> /usr/lib/dyld
    0x7ff7ffe6e000 -     0x7ff7ffe9dfff runtime (*) <f066db2c-ed38-3f37-8d21-81d15fa908fe> /usr/libexec/rosetta/runtime

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=7120K resident=0K(0%) swapped_out_or_unallocated=7120K(100%)
Writable regions: Total=157.2M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=157.2M(100%)

                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
Rosetta Arena                     4096K        2 
Rosetta Generic                    896K      221 
Rosetta IndirectBranch              32K        1 
Rosetta JIT                      128.0M        1 
Rosetta Return Stack                20K        2 
Rosetta Thread Context              20K        2 
Stack                             8176K        1 
Stack Guard                       56.0M        1 
VM_ALLOCATE                       15.5M        7 
VM_ALLOCATE (reserved)              32K        1         reserved VM address space (unallocated)
__DATA                             848K        6 
__DATA_CONST                        32K        1 
__DATA_DIRTY                        16K        1 
__LINKEDIT                        2064K        8 
__TEXT                            5088K        4 
dyld private memory                512K        2 
mapped file                        6.7G       34 
===========                     =======  ======= 
TOTAL                              6.9G      295 
TOTAL, minus reserved VM space     6.9G      295 

-----------
Full Report
-----------

{"app_name":"UCBLogo","timestamp":"2023-02-15 07:13:00.00 -0800","app_version":"","slice_uuid":"c699af6f-5d6d-3678-abc1-f3c9269b8bf4","build_version":"0.0.1d1","platform":1,"share_with_app_devs":1,"is_first_party":1,"bug_type":"309","os_version":"macOS 13.2 (22D49)","roots_installed":0,"incident_id":"D41C3F7F-0CEA-4B57-AA2A-9D50ED074C4C","name":"UCBLogo"}
{
  "uptime" : 110000,
  "procRole" : "Default",
  "version" : 2,
  "userID" : 501,
  "deployVersion" : 210,
  "modelCode" : "MacBookPro17,1",
  "coalitionID" : 9318,
  "osVersion" : {
    "train" : "macOS 13.2",
    "build" : "22D49",
    "releaseType" : "User"
  },
  "captureTime" : "2023-02-15 07:13:00.3325 -0800",
  "incident" : "D41C3F7F-0CEA-4B57-AA2A-9D50ED074C4C",
  "pid" : 81116,
  "translated" : true,
  "cpuType" : "X86-64",
  "roots_installed" : 0,
  "bug_type" : "309",
  "procLaunch" : "2023-02-15 07:13:00.2366 -0800",
  "procStartAbsTime" : 2760138700959,
  "procExitAbsTime" : 2760140758831,
  "procName" : "UCBLogo",
  "procPath" : "\/Applications\/UCBLogo.app\/Contents\/MacOS\/UCBLogo",
  "bundleInfo" : {"CFBundleVersion":"0.0.1d1"},
  "parentProc" : "launchd",
  "parentPid" : 1,
  "crashReporterKey" : "AFA2DD3E-AC4C-CDA9-9B1A-2C5E15FA50C5",
  "throttleTimeout" : 2147483647,
  "wakeTime" : 1345,
  "sleepWakeUUID" : "BE29BE75-67DA-4D8D-8045-3A5C81ECAFC2",
  "sip" : "enabled",
  "exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
  "termination" : {"code":1,"flags":518,"namespace":"DYLD","indicator":"Library missing","details":["(terminated at launch; ignore backtrace)"],"reasons":["Library not loaded: \/usr\/local\/opt\/jpeg-turbo\/lib\/libjpeg.8.dylib","Referenced from: <C699AF6F-5D6D-3678-ABC1-F3C9269B8BF4> \/Applications\/UCBLogo.app\/Contents\/MacOS\/UCBLogo","Reason: tried: '\/usr\/local\/opt\/jpeg-turbo\/lib\/libjpeg.8.dylib' (no such file), '\/System\/Volumes\/Preboot\/Cryptexes\/OS\/usr\/local\/opt\/jpeg-turbo\/lib\/libjpeg.8.dylib' (no such file), '\/usr\/local\/opt\/jpeg-turbo\/lib\/libjpeg.8.dylib' (no such file), '\/usr\/local\/lib\/libjpeg.8.dylib' (no such file), '\/usr\/lib\/libjpeg.8.dylib' (no such file, not in dyld cache)"]},
  "extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
  "faultingThread" : 0,
  "threads" : [{"triggered":true,"id":2251156,"threadState":{"x":[{"value":6},{"value":1},{"value":13038483936},{"value":115},{"value":13038482912},{"value":0},{"value":7165064483209180463},{"value":139304332385},{"value":13038482912},{"value":0},{"value":115},{"value":13038482912},{"value":115},{"value":13038483936},{"value":1},{"value":6},{"value":521},{"value":0},{"value":9223372041336404864},{"value":4346970112},{"value":2047},{"value":4481650592},{"value":18446744073709551615},{"value":4347013500},{"value":8637218055,"symbolLocation":82,"symbol":"abort_with_payload_wrapper_internal"},{"value":4347011656},{"value":4347614712},{"value":0},{"value":8637115210,"symbolLocation":10,"symbol":"__abort_with_payload"}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4347623692},"cpsr":{"value":2147487744},"fp":{"value":738197504},"sp":{"value":4481629056},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":4347013544,"matchesCrashFrame":1},"far":{"value":4347621376}},"frames":[{"imageOffset":4347013544,"region":"Rosetta Runtime Routines","symbolLocation":10664,"imageIndex":0},{"imageOffset":4347623692,"region":"<translation info unavailable>","imageIndex":0},{"imageOffset":535815,"symbol":"abort_with_payload_wrapper_internal","symbolLocation":82,"imageIndex":1},{"imageOffset":535865,"symbol":"abort_with_payload","symbolLocation":9,"imageIndex":1},{"imageOffset":41441,"symbol":"dyld4::halt(char const*)","symbolLocation":375,"imageIndex":1},{"imageOffset":30304,"symbol":"dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*)","symbolLocation":4502,"imageIndex":1},{"imageOffset":25217,"symbol":"start","symbolLocation":2289,"imageIndex":1}]},{"id":2251164,"name":"com.apple.rosetta.exceptionserver","frames":[{"imageOffset":17940,"imageIndex":2},{"imageOffset":66864,"imageIndex":2},{"imageOffset":73520,"imageIndex":2}]}],
  "usedImages" : [
  {
    "size" : 0,
    "source" : "A",
    "base" : 0,
    "uuid" : "00000000-0000-0000-0000-000000000000"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 8636682240,
    "size" : 622592,
    "uuid" : "270c4224-a38f-3a22-9ba9-95968f487738",
    "path" : "\/usr\/lib\/dyld",
    "name" : "dyld"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 140703126970368,
    "size" : 196608,
    "uuid" : "f066db2c-ed38-3f37-8d21-81d15fa908fe",
    "path" : "\/usr\/libexec\/rosetta\/runtime",
    "name" : "runtime"
  }
],
  "sharedCache" : {
  "base" : 140703301599232,
  "size" : 21474836480,
  "uuid" : "efc722b9-b3df-3d27-9a7b-c4acaf125abb"
},
  "vmSummary" : "ReadOnly portion of Libraries: Total=7120K resident=0K(0%) swapped_out_or_unallocated=7120K(100%)\nWritable regions: Total=157.2M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=157.2M(100%)\n\n                                VIRTUAL   REGION \nREGION TYPE                        SIZE    COUNT (non-coalesced) \n===========                     =======  ======= \nRosetta Arena                     4096K        2 \nRosetta Generic                    896K      221 \nRosetta IndirectBranch              32K        1 \nRosetta JIT                      128.0M        1 \nRosetta Return Stack                20K        2 \nRosetta Thread Context              20K        2 \nStack                             8176K        1 \nStack Guard                       56.0M        1 \nVM_ALLOCATE                       15.5M        7 \nVM_ALLOCATE (reserved)              32K        1         reserved VM address space (unallocated)\n__DATA                             848K        6 \n__DATA_CONST                        32K        1 \n__DATA_DIRTY                        16K        1 \n__LINKEDIT                        2064K        8 \n__TEXT                            5088K        4 \ndyld private memory                512K        2 \nmapped file                        6.7G       34 \n===========                     =======  ======= \nTOTAL                              6.9G      295 \nTOTAL, minus reserved VM space     6.9G      295 \n",
  "legacyInfo" : {
  "threadTriggered" : {

  }
},
  "trialInfo" : {
  "rollouts" : [
    {
      "rolloutId" : "63a0a6cfd1cdb67d083006d0",
      "factorPackIds" : {

      },
      "deploymentId" : 240000003
    },
    {
      "rolloutId" : "61fd92db295c182621ececc3",
      "factorPackIds" : {
        "SIRI_DIALOG_ASSETS" : "63cfe62785b8e5034c21d7eb"
      },
      "deploymentId" : 240000307
    }
  ],
  "experiments" : [

  ]
}
}
dmalec commented 1 year ago

Was able to replicate and I think the core issue is not the architecture or OS version; but, how wxWidgets was compiling on the GitHub runner instance.

It looks like the installation of brew has libraries which are getting dynamically linked to during the build (based on inspecting it with otool):

        /usr/local/opt/jpeg-turbo/lib/libjpeg.8.dylib (compatibility version 8.0.0, current version 8.2.2)
        /usr/local/opt/libtiff/lib/libtiff.5.dylib (compatibility version 14.0.0, current version 14.0.0)
jrincayc commented 1 year ago

ucblogo.dmg(2).zip

Newly generated dmg file.