AdaCore / gnatstudio

GNAT Studio is a powerful and lightweight IDE for Ada and SPARK.
399 stars 52 forks source link

macOS Sonoma 14.1 version | M2 gnat is not working #168

Closed sserpilozdemir closed 9 months ago

sserpilozdemir commented 10 months ago

I downloaded dependencies.

➜  ~ gprbuild --version
GPRBUILD Community 2020 (20200818) (x86_64-apple-darwin17.7.0)
Copyright (C) 2004-2020, AdaCore

➜  ~ gcc --version     
Apple clang version 15.0.0 (clang-1500.0.40.1)
Target: arm64-apple-darwin23.1.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
➜  ~ gnatmake --version  
GNATMAKE Community 2020 (20200818-84)
Copyright (C) 1995-2020, Free Software Foundation, Inc.
➜  ~ gnat --version    
GNAT Community 2020 (20200818-84)
Copyright (C) 1996-2020, Free Software Foundation, Inc.
➜  ~ 

When I try these commands by order:


➜  ~ nano your_program.adb
Content ->
-- your_program.adb
with Ada.Text_IO; use Ada.Text_IO;
procedure Your_Program is
begin
   Put_Line ("Hello, world!");
end Your_Program;

➜  ~ gnatmake your_program.adb
gcc -c your_program.adb
gnatbind -x your_program.ali
gnatlink your_program.ali
-macosx_version_min has been renamed to -macos_version_min
ld: warning: ignoring duplicate libraries: '-lSystem'
0  0x100fa9f43  __assert_rtn + 64
1  0x100eabf43  ld::AtomPlacement::findAtom(unsigned char, unsigned long long, ld::AtomPlacement::AtomLoc const*&, long long&) const + 1411
2  0x100ec8431  ld::InputFiles::SliceParser::parseObjectFile(mach_o::Header const*) const + 19745
3  0x100ed8e44  ld::InputFiles::parseAllFiles(void (ld::AtomFile const*) block_pointer)::$_7::operator()(unsigned long, ld::FileInfo const&) const + 1380
4  0x7ff80ac4d5cd  _dispatch_client_callout2 + 8
5  0x7ff80ac5de3e  _dispatch_apply_invoke + 214
6  0x7ff80ac4d59a  _dispatch_client_callout + 8
7  0x7ff80ac5c99d  _dispatch_root_queue_drain + 879
8  0x7ff80ac5cf22  _dispatch_worker_thread2 + 152
9  0x7ff80adf1c06  _pthread_wqthread + 262
ld: Assertion failed: (resultIndex < sectData.atoms.size()), function findAtom, file Relocations.cpp, line 1336.
collect2: error: ld returned 1 exit status
gnatlink: error when calling /Users/serpil.ozdemir/opt/GNAT/2020/bin/gcc
gnatmake: *** link failed.
➜  ~ 

the problem is "ld: Assertion failed: (resultIndex < sectData.atoms.size())"

I searched and found a solution:

https://developer.apple.com/forums/thread/737707

My current **Command Line Tools package version information :

_package-id: com.apple.pkg.CLToolsExecutables version: 15.0.0.0.1.1694021235 volume: / location: / install-time: 1695103537

But when I tried to downgrade my Command Line Tools package 14.3.1, the setup phase wasn't complete. I got an error:

Command Line Tools can't be installed on this disk. The version of macOS is too new.

That does not make sense, I mean downgrading the version of pc. So what should I do now?