After downloading the latest binary beta from the CEF automated builds (MacOS 64-bit, 5359 & 5414, specifically: cef_binary_108.4.11+g9e36762+chromium-108.0.5359.62_macosx64_beta), and running cmake & make to get cefclient (on my M1 Pro mac via "cmake -DPROJECT_ARCH="x86_64" -B ."), the resulting cefclient.app runs perfectly fine.
When attempting to build the CEF binary from source, and then repeating the steps to build cefclient, the resulting cefclient.app always crashes.
- Code: Select all
Process: cefclient [5444]
Path: /Users/USER/*/cefclient.app/Contents/MacOS/cefclient
Identifier: org.cef.cefclient
Version: 1.0 (1.0)
Code Type: X86-64 (Translated)
Parent Process: launchd [1]
User ID: 501
Date/Time: 2022-12-05 11:49:08.7082 -0600
OS Version: macOS 12.6 (21G115)
Report Version: 12
Anonymous UUID: 4481B5E2-BD63-DDA6-B828-617ED63CE33D
Sleep/Wake UUID: 9DA4D378-7966-4B9B-A492-82945F0C549E
Time Awake Since Boot: 62000 seconds
Time Since Wake: 7208 seconds
System Integrity Protection: enabled
Crashed Thread: 0 CrBrowserMain Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Codes: 0x0000000000000001, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11
Terminating Process: exc handler [5444]
VM Region Info: 0 is not in any region. Bytes before following region: 4343529472
REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL
UNUSED SPACE AT START
--->
__TEXT 102e50000-102f14000 [ 784K] r-x/r-x SM=COW ...cOS/cefclient
Thread 0 Crashed:: CrBrowserMain Dispatch queue: com.apple.main-thread
0 Chromium Embedded Framework 0x11e6f9aa9 ChromeAppModeStart_v6 + 59230937
1 Chromium Embedded Framework 0x11e3cde2a ChromeAppModeStart_v6 + 55905882
2 Chromium Embedded Framework 0x11e3cdd72 ChromeAppModeStart_v6 + 55905698
3 Chromium Embedded Framework 0x11e3ce8b8 ChromeAppModeStart_v6 + 55908584
4 Chromium Embedded Framework 0x11e0dfbf3 ChromeAppModeStart_v6 + 52833315
5 Chromium Embedded Framework 0x11d4538e7 ChromeAppModeStart_v6 + 39676183
6 Chromium Embedded Framework 0x117274b21 cef_string_map_size + 16692561
7 Chromium Embedded Framework 0x1162a05bf cef_string_map_size + 94191
8 Chromium Embedded Framework 0x11626b823 0x116230000 + 243747
9 Chromium Embedded Framework 0x116afee17 cef_string_map_size + 8869959
10 Chromium Embedded Framework 0x116334d1a cef_string_map_size + 702282
11 Chromium Embedded Framework 0x11881ad4f cef_basetime_now + 7247
12 CoreFoundation 0x7ff80f1f335a __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
13 CoreFoundation 0x7ff80f1f32c2 __CFRunLoopDoSource0 + 180
14 CoreFoundation 0x7ff80f1f3040 __CFRunLoopDoSources0 + 242
15 CoreFoundation 0x7ff80f1f1a50 __CFRunLoopRun + 892
16 CoreFoundation 0x7ff80f1f1014 CFRunLoopRunSpecific + 562
17 HIToolbox 0x7ff81830e5e6 RunCurrentEventLoopInMode + 292
18 HIToolbox 0x7ff81830e34a ReceiveNextEventCommon + 594
19 HIToolbox 0x7ff81830e0e5 _BlockUntilNextEventMatchingListInModeWithFilter + 70
20 AppKit 0x7ff811b61fad _DPSNextEvent + 927
21 AppKit 0x7ff811b6066a -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1394
22 AppKit 0x7ff811b52d19 -[NSApplication run] + 586
23 Chromium Embedded Framework 0x118285126 cef_string_map_size + 33536854
24 Chromium Embedded Framework 0x11791435b cef_string_map_size + 23637387
25 Chromium Embedded Framework 0x116ce4cea cef_string_map_size + 10860314
26 Chromium Embedded Framework 0x116a12912 cef_string_map_size + 7902018
27 Chromium Embedded Framework 0x118a7a9aa cef_zip_reader_create + 389578
28 cefclient 0x102e93389 client::MainMessageLoopStd::Run() + 9
29 cefclient 0x102e94ac4 main + 788
30 dyld 0x20308252e start + 462
etc. (I can provide the rest of the crash report if so desired)
When we build CEF from source, it is running on a machine with the following attributes:
ProductName: macOS
ProductVersion: 12.0.1
BuildVersion: 21A559
cmake version 3.23.1
Xcode 13.3.1
Build version 13E500a
The options we use for building CEF from source are:
- Code: Select all
proprietary_codecs=true ffmpeg_branding=Chrome enable_vr=false is_official_build=true use_thin_lto=false
So we are disabling thinLTO, since otherwise our attempts to compile CEF from source fails (see https://bitbucket.org/chromiumembedded/ ... s-with-m90).
In any case, didn't modify the CEF/chromium source nor the cefclient source, and same commands were used to build cefclient. Any hint for building CEF that we are missing or overlooking would be most helpful.