comp.lang.ada
 help / color / mirror / Atom feed
* macOS Ventura 13.6 update problem
@ 2023-09-22 20:02 moi
  2023-09-23 11:16 ` Simon Wright
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: moi @ 2023-09-22 20:02 UTC (permalink / raw)


Installing the macOS Ventura 13.6 security update clobbers GNAT.
Specifically, the link stage fails:

> -macosx_version_min has been renamed to -macos_version_min
> 0  0x104de0f43  __assert_rtn + 64
> 1  0x104ce2f43  ld::AtomPlacement::findAtom(unsigned char, unsigned long long, ld::AtomPlacement::AtomLoc const*&, long long&) const + 1411
> 2  0x104cff431  ld::InputFiles::SliceParser::parseObjectFile(mach_o::Header const*) const + 19745
> 3  0x104d0fb71  ld::InputFiles::parseAllFiles(void (ld::AtomFile const*) block_pointer)::$_7::operator()(unsigned long, ld::FileInfo const&) const + 657
> 4  0x7ff80b631066  _dispatch_client_callout2 + 8
> 5  0x7ff80b642e09  _dispatch_apply_invoke + 213
> 6  0x7ff80b631033  _dispatch_client_callout + 8
> 7  0x7ff80b6410f6  _dispatch_root_queue_drain + 683
> 8  0x7ff80b641768  _dispatch_worker_thread2 + 170
> 9  0x7ff80b7cec0f  _pthread_wqthread + 257
> ld: Assertion failed: (resultIndex < sectData.atoms.size()), function findAtom, file Relocations.cpp, line 1336.
> collect2: error: ld returned 1 exit status
> gnatmake: *** link failed.

Simon's "magic formula", '-largs -Wl,-ld_classic' restores sanity.
I guess the CLTs were updated without asking permission. 8-(

-- 
Bill F.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-09-22 20:02 macOS Ventura 13.6 update problem moi
@ 2023-09-23 11:16 ` Simon Wright
  2023-09-23 16:36   ` Simon Wright
  2023-09-23 22:37 ` Leo Brewin
  2023-11-18 14:22 ` Martin Krischik
  2 siblings, 1 reply; 10+ messages in thread
From: Simon Wright @ 2023-09-23 11:16 UTC (permalink / raw)


moi <findlaybill@blueyonder.co.uk> writes:

> Installing the macOS Ventura 13.6 security update clobbers GNAT.
> Specifically, the link stage fails:
>
>> -macosx_version_min has been renamed to -macos_version_min
>> 0  0x104de0f43  __assert_rtn + 64
>> 1 0x104ce2f43 ld::AtomPlacement::findAtom(unsigned char, unsigned
>> long long, ld::AtomPlacement::AtomLoc const*&, long long&) const +
>> 1411
>> 2 0x104cff431
>> ld::InputFiles::SliceParser::parseObjectFile(mach_o::Header const*)
>> const + 19745
>> 3 0x104d0fb71 ld::InputFiles::parseAllFiles(void (ld::AtomFile
>> const*) block_pointer)::$_7::operator()(unsigned long, ld::FileInfo
>> const&) const + 657
>> 4  0x7ff80b631066  _dispatch_client_callout2 + 8
>> 5  0x7ff80b642e09  _dispatch_apply_invoke + 213
>> 6  0x7ff80b631033  _dispatch_client_callout + 8
>> 7  0x7ff80b6410f6  _dispatch_root_queue_drain + 683
>> 8  0x7ff80b641768  _dispatch_worker_thread2 + 170
>> 9  0x7ff80b7cec0f  _pthread_wqthread + 257
>> ld: Assertion failed: (resultIndex < sectData.atoms.size()),
>> function findAtom, file Relocations.cpp, line 1336.
>> collect2: error: ld returned 1 exit status
>> gnatmake: *** link failed.
>
> Simon's "magic formula", '-largs -Wl,-ld_classic' restores sanity.
> I guess the CLTs were updated without asking permission. 8-(

I managed to avoid this this morning (I've been resisting the attempted
upgrade to CLT 15.0) by looking to see what was proposed, seeing that
there were 2 upgrades (Ventura & CLT), and unchecking the CLT.

Iain Sandoe recommends[1] re-installing 14.3 (you should be able to
download it from the developer.apple.com website, although you do need
an apple ID to do that)

[1] https://github.com/iains/gcc-12-branch/issues/22#issuecomment-1730213294

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-09-23 11:16 ` Simon Wright
@ 2023-09-23 16:36   ` Simon Wright
  0 siblings, 0 replies; 10+ messages in thread
From: Simon Wright @ 2023-09-23 16:36 UTC (permalink / raw)


Simon Wright <simon@pushface.org> writes:

> I managed to avoid this this morning (I've been resisting the
> attempted upgrade to CLT 15.0) by looking to see what was proposed,
> seeing that there were 2 upgrades (Ventura & CLT), and unchecking the
> CLT.

And now it proposes to install it tonight. Ugh. Investigating what
happens if I turn off automatic installation of macOS updates ...

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-09-22 20:02 macOS Ventura 13.6 update problem moi
  2023-09-23 11:16 ` Simon Wright
@ 2023-09-23 22:37 ` Leo Brewin
  2023-09-24  0:47   ` moi
  2023-09-24 11:55   ` Simon Wright
  2023-11-18 14:22 ` Martin Krischik
  2 siblings, 2 replies; 10+ messages in thread
From: Leo Brewin @ 2023-09-23 22:37 UTC (permalink / raw)


On 23/9/2023 6:02 am, moi wrote:
> Installing the macOS Ventura 13.6 security update clobbers GNAT.
> Specifically, the link stage fails:
> 
>> -macosx_version_min has been renamed to -macos_version_min
>> 0  0x104de0f43  __assert_rtn + 64
>> 1  0x104ce2f43  ld::AtomPlacement::findAtom(unsigned char, unsigned 
>> long long, ld::AtomPlacement::AtomLoc const*&, long long&) const + 1411
>> 2  0x104cff431  
>> ld::InputFiles::SliceParser::parseObjectFile(mach_o::Header const*) 
>> const + 19745
>> 3  0x104d0fb71  ld::InputFiles::parseAllFiles(void (ld::AtomFile 
>> const*) block_pointer)::$_7::operator()(unsigned long, ld::FileInfo 
>> const&) const + 657
>> 4  0x7ff80b631066  _dispatch_client_callout2 + 8
>> 5  0x7ff80b642e09  _dispatch_apply_invoke + 213
>> 6  0x7ff80b631033  _dispatch_client_callout + 8
>> 7  0x7ff80b6410f6  _dispatch_root_queue_drain + 683
>> 8  0x7ff80b641768  _dispatch_worker_thread2 + 170
>> 9  0x7ff80b7cec0f  _pthread_wqthread + 257
>> ld: Assertion failed: (resultIndex < sectData.atoms.size()), function 
>> findAtom, file Relocations.cpp, line 1336.
>> collect2: error: ld returned 1 exit status
>> gnatmake: *** link failed.
> 
> Simon's "magic formula", '-largs -Wl,-ld_classic' restores sanity.
> I guess the CLTs were updated without asking permission. 8-(
> 

Hmm, this is odd. I'm having no problems.
I'm running mac OS Ventura 13.6 (with the security update), CLT 15.0
and gnat based on gcc 13.1.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-09-23 22:37 ` Leo Brewin
@ 2023-09-24  0:47   ` moi
  2023-09-24 11:55   ` Simon Wright
  1 sibling, 0 replies; 10+ messages in thread
From: moi @ 2023-09-24  0:47 UTC (permalink / raw)


On 23/09/2023 23:37, Leo Brewin wrote:
> On 23/9/2023 6:02 am, moi wrote:
>> Installing the macOS Ventura 13.6 security update clobbers GNAT.
>> Specifically, the link stage fails:
>>
>>> -macosx_version_min has been renamed to -macos_version_min
>>> 0  0x104de0f43  __assert_rtn + 64
>>> 1  0x104ce2f43  ld::AtomPlacement::findAtom(unsigned char, unsigned 
>>> long long, ld::AtomPlacement::AtomLoc const*&, long long&) const + 1411
>>> 2  0x104cff431 
>>> ld::InputFiles::SliceParser::parseObjectFile(mach_o::Header const*) 
>>> const + 19745
>>> 3  0x104d0fb71  ld::InputFiles::parseAllFiles(void (ld::AtomFile 
>>> const*) block_pointer)::$_7::operator()(unsigned long, ld::FileInfo 
>>> const&) const + 657
>>> 4  0x7ff80b631066  _dispatch_client_callout2 + 8
>>> 5  0x7ff80b642e09  _dispatch_apply_invoke + 213
>>> 6  0x7ff80b631033  _dispatch_client_callout + 8
>>> 7  0x7ff80b6410f6  _dispatch_root_queue_drain + 683
>>> 8  0x7ff80b641768  _dispatch_worker_thread2 + 170
>>> 9  0x7ff80b7cec0f  _pthread_wqthread + 257
>>> ld: Assertion failed: (resultIndex < sectData.atoms.size()), function 
>>> findAtom, file Relocations.cpp, line 1336.
>>> collect2: error: ld returned 1 exit status
>>> gnatmake: *** link failed.
>>
>> Simon's "magic formula", '-largs -Wl,-ld_classic' restores sanity.
>> I guess the CLTs were updated without asking permission. 8-(
>>
> 
> Hmm, this is odd. I'm having no problems.
> I'm running mac OS Ventura 13.6 (with the security update), CLT 15.0
> and gnat based on gcc 13.1.
> 
Ah!
I'm still on GNAT 12.2.0.

I should have added that, although the link phase works,
it produces this message, which is new:

> -macosx_version_min has been renamed to -macos_version_min

And Free Pascal Compiler version 3.2.2 [2021/05/16] for x86_64
also complains, thus;

> ld: warning: -multiply_defined is obsolete

But again, the linking succeeds.

-- 
Bill F.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-09-23 22:37 ` Leo Brewin
  2023-09-24  0:47   ` moi
@ 2023-09-24 11:55   ` Simon Wright
  2023-09-24 15:38     ` Simon Wright
  1 sibling, 1 reply; 10+ messages in thread
From: Simon Wright @ 2023-09-24 11:55 UTC (permalink / raw)


Leo Brewin <Leo.Brewin@monash.edu> writes:

> Hmm, this is odd. I'm having no problems.
> I'm running mac OS Ventura 13.6 (with the security update), CLT 15.0
> and gnat based on gcc 13.1.

I was under the impression that 13.6 _was_ a security update!

Investigation so far shows that linking against the static Ada runtime
(the default, -bargs -static) crashes, against the shared runtime
(-bargs -shared) is OK.

With 12.2.0, 13.1.0, 14.0.0.

I occurs to me that it might be _any_ static library? ... later

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-09-24 11:55   ` Simon Wright
@ 2023-09-24 15:38     ` Simon Wright
  0 siblings, 0 replies; 10+ messages in thread
From: Simon Wright @ 2023-09-24 15:38 UTC (permalink / raw)


Simon Wright <simon@pushface.org> writes:

> I occurs to me that it might be _any_ static library? ... later

Yes, so it is. Damn.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-09-22 20:02 macOS Ventura 13.6 update problem moi
  2023-09-23 11:16 ` Simon Wright
  2023-09-23 22:37 ` Leo Brewin
@ 2023-11-18 14:22 ` Martin Krischik
  2023-11-18 19:23   ` moi
  2 siblings, 1 reply; 10+ messages in thread
From: Martin Krischik @ 2023-11-18 14:22 UTC (permalink / raw)


moi schrieb am Freitag, 22. September 2023 um 22:02:21 UTC+2:
> Installing the macOS Ventura 13.6 security update clobbers GNAT. 

Great. I already put off major macOS updated because I don't want to break a working system. Now I need to avoid „security“ updates as well. The „just works“ sale point is eroding.
 
> Simon's "magic formula", '-largs -Wl,-ld_classic' restores sanity. 

Now I have to find out how that works.

Martin

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-11-18 14:22 ` Martin Krischik
@ 2023-11-18 19:23   ` moi
  2023-11-18 20:35     ` Simon Wright
  0 siblings, 1 reply; 10+ messages in thread
From: moi @ 2023-11-18 19:23 UTC (permalink / raw)


On 18/11/2023 14:22, Martin Krischik wrote:
> moi schrieb am Freitag, 22. September 2023 um 22:02:21 UTC+2:
>> Installing the macOS Ventura 13.6 security update clobbers GNAT.
> 
> Great. I already put off major macOS updated because I don't want to break a working system. Now I need to avoid „security“ updates as well. The „just works“ sale point is eroding.

It was actually the well hidden update of the Command Line Tools 
accompanying th security update that caused the problem.
Just make sure to unselect the CLT update.

>> Simon's "magic formula", '-largs -Wl,-ld_classic' restores sanity.
> Now I have to find out how that works.

Just add "-largs -Wl,-ld_classic" to the linker parameters,
if you have updated the CLTs.

-- 
Bill F.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: macOS Ventura 13.6 update problem
  2023-11-18 19:23   ` moi
@ 2023-11-18 20:35     ` Simon Wright
  0 siblings, 0 replies; 10+ messages in thread
From: Simon Wright @ 2023-11-18 20:35 UTC (permalink / raw)


moi <findlaybill@blueyonder.co.uk> writes:

> On 18/11/2023 14:22, Martin Krischik wrote:
>> moi schrieb am Freitag, 22. September 2023 um 22:02:21 UTC+2:
>>> Installing the macOS Ventura 13.6 security update clobbers GNAT.
>> Great. I already put off major macOS updated because I don't want to
>> break a working system. Now I need to avoid „security“ updates as
>> well. The „just works“ sale point is eroding.
>
> It was actually the well hidden update of the Command Line Tools
> accompanying th security update that caused the problem.
> Just make sure to unselect the CLT update.
>
>>> Simon's "magic formula", '-largs -Wl,-ld_classic' restores sanity.
>> Now I have to find out how that works.
>
> Just add "-largs -Wl,-ld_classic" to the linker parameters,
> if you have updated the CLTs.

e.g.   gnatmake foo.adb -largs -Wl,-ld_classic
or     gprbuild -P foo -largs -Wl,-ld_classic
or     alr build -- -largs -Wl,-ld_classic

The GNAT tools use gcc to drive the system linker ld. When gcc sees
-Wl,-foo,bar it sends "-foo bar" to ld (the 'l' means 'linker'; see the
GCC switches web page for the other possibilities).

When /usr/bin/ld (from Xcode 15) sees -ld_classic, rather than taking it
as an instruction to process libld_classic.{a,dylib}, it delegates the
actual link to /Library/Developer/CommandLineTools/usr/bin/ld-classic.

Wow.

You could always download the 15.1 beta version of the tools package
from developer.apple.com

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-11-18 20:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-22 20:02 macOS Ventura 13.6 update problem moi
2023-09-23 11:16 ` Simon Wright
2023-09-23 16:36   ` Simon Wright
2023-09-23 22:37 ` Leo Brewin
2023-09-24  0:47   ` moi
2023-09-24 11:55   ` Simon Wright
2023-09-24 15:38     ` Simon Wright
2023-11-18 14:22 ` Martin Krischik
2023-11-18 19:23   ` moi
2023-11-18 20:35     ` Simon Wright

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox