comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: [gnuada, question] installations directory
Date: Tue, 03 Jan 2006 15:46:33 +0100
Date: 2006-01-03T15:46:33+01:00	[thread overview]
Message-ID: <874q4lmks6.fsf@ludovic-brenta.org> (raw)
In-Reply-To: 32492718.GlmySslk4r@linux1.krischik.com

Martin Krischik <krischik@users.sourceforge.net> writes:
> Linux is still not quite as easy to use as Mac :-(. Multiple gcc are not
> usually available on Linux.

GCC is designed so that multiple versions of it can be on the same
system.  This is especially imortant when you want both native and
cross compilers to be available.  Look at gcc -B, and the directory
structure: /usr/lib/gcc/<target>/<version>/gnat1

>> Or, isn't there an rpm option to install in separate
>> installation roots?
>
> Yes there is. The problem is the search path for DLLs. The path of an DLL is
> hard-coded into the executable.

Only if the shared library is created with "rpath", which is against
Debian policy for example.  rpath is a linker option.

It is quite easy to have multiple versions of libgnat installed,
provided they have different sonames.

> There is also an additional search which can be set in
> /etc/ld.so.conf.d when the DLL is not found at the "usual" place.

> But that is all manual extra installation and can be quite tricky -
> nothing I would want dump on an unwary beginner of Ada.

The packages should use GCC's directory structure, and rename "gcc" to
"gcc-3.4" or "gcc-4.0" as Debian does.  Then one symlink, gcc, points
to the system's default version.  With gnat, the tools (gnatmake,
gnatlink etc.) can be symlinks (in /usr/bin) pointing to executables
in /usr/lib/gcc/<target>/<version>.

-- 
Ludovic Brenta.



  parent reply	other threads:[~2006-01-03 14:46 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-02 11:03 [gnuada, question] installations directory Martin Krischik
2006-01-02 13:14 ` Georg Bauhaus
2006-01-02 16:17   ` Martin Krischik
2006-01-02 18:08     ` Larry Kilgallen
2006-01-04 18:06       ` Martin Krischik
2006-01-03 14:46     ` Ludovic Brenta [this message]
2006-01-02 14:19 ` Larry Kilgallen
2006-01-02 16:22   ` Martin Krischik
2006-01-02 14:40 ` Jeffrey Creem
2006-01-02 16:46   ` Martin Krischik
2006-01-02 17:05   ` Martin Krischik
2006-01-03 21:57   ` Simon Wright
2006-01-04  7:13     ` krischik
2006-01-04 20:29       ` Simon Wright
2006-01-05 19:03         ` Martin Krischik
replies disabled

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