simonjwright / distributing-gcc

Binary releases of GCC (native and cross) on macOS; also, the scripts/Makefiles used for producing them.
BSD 3-Clause "New" or "Revised" License
40 stars 0 forks source link

Install directory path different to that stated #2

Closed wiremoons closed 2 years ago

wiremoons commented 2 years ago

Hi @simonjwright

Firstly - thank you very much for making a native GNAT compiler and tools available for Apple Silicon computers, to better support the Ada language.

I have installed on a Mac Mini M1 using the package from your release page here: GCC-12.0.1-aarch64

The installer works very well, and completes successful. The point of this issue is that the install states in many places that is will install to the location:

/opt/gcc-12.0.1-aarch64/

whereas when I ran the install (using the defaults presented) the install completed into the location:

/opt/gcc-12.0.1/

I am actually happier with the shorter path name, but thought I would let you know as it effects the instructions provided about subsequently updating the $PATH on the system too. (ie /opt/gcc-12.0.1-aarch64/bin vs /opt/gcc-12.0.1/bin).

Not sure if you need any additional information to help work out why the install path is different - if you do just let me know đź‘Ť

Thanks

Simon

simonjwright commented 2 years ago

Thanks for the report! I see exactly why it happens.

The reason I didn’t notice is that I didn’t actually try installing on my Mini because "it was already there", in fact the distribution was built from that location.

If I had tried installing on the Mini I would have found that what I distributed was actually an x86_64 release.

Oh dear, egg on face, I’ll publicise this and re-do. This time, I’ll check.

As to why I have the extra path -- I have several compilers on my machines, I have to keep track of which is which. The aarch64 changes do have the effect of treating the runpath properly, so the compiler can be moved from its original install location and executables built against the new location will still work.

wiremoons commented 2 years ago

No problem @simonjwright - no harm done at all, and good it has been spotted in the pre-release version.

Look forward to trying out the next iteration, once you have had the time to merge in any evolutions :)

Simon

simonjwright commented 2 years ago

A point about the pre-release marking - what I was really thinking was the compiler’s state, i.e. 12.0.1. I’m not sure what’s going to happen in the aarch64 project at the point when the base compiler is released at 12.1.0.

Fixed in b9b013b.