comp.lang.ada
 help / color / mirror / Atom feed
* no rule to make target gnatlib_and_tools
@ 2004-12-19  1:27 sohail
  2004-12-19  8:55 ` Martin Krischik
  2004-12-19 18:56 ` christov
  0 siblings, 2 replies; 9+ messages in thread
From: sohail @ 2004-12-19  1:27 UTC (permalink / raw)


This is really weird.

I am trying to build _just_ the ada compiler driver for linux using gcc
3.4.3 release sources. I enter the following (mostly as per
instruction):

% mkdir /extra/src/build
% cd /extra/src/build
% /extra/src/gcc/configure --prefix=/opt/me --enable-languages=ada
% make bootstrap
% make gnatlib_and_tools

Everything works fine until the last line. I get "No rule to make
target gnatlib_and_tools". This is confusing. The only place where the
target actually exists is in gcc/ada/Makefile-lang.in. This leads me to
think that for some reason, the ada compiler is not being created. I
have the gnat-3.15p binary installed.

Is there something I need to do for gnatgcc? I read somewhere I would
need to rename gnatgcc but that didn't work.

TIA

Sohail




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

* Re: no rule to make target gnatlib_and_tools
  2004-12-19  1:27 no rule to make target gnatlib_and_tools sohail
@ 2004-12-19  8:55 ` Martin Krischik
  2004-12-19  9:14   ` u_int32_t
  2004-12-19 18:56 ` christov
  1 sibling, 1 reply; 9+ messages in thread
From: Martin Krischik @ 2004-12-19  8:55 UTC (permalink / raw)


sohail@sohailsomani.com wrote:

> This is really weird.
> 
> I am trying to build _just_ the ada compiler driver for linux using gcc
> 3.4.3 release sources. I enter the following (mostly as per
> instruction):
> 
> % mkdir /extra/src/build
> % cd /extra/src/build
> % /extra/src/gcc/configure --prefix=/opt/me --enable-languages=ada
> % make bootstrap

There is a "cd" missing in beween here. See:
http://ada.krischik.com/gnat-3_4.html

> % make gnatlib_and_tools
> 
> Everything works fine until the last line. I get "No rule to make
> target gnatlib_and_tools". This is confusing. The only place where the
> target actually exists is in gcc/ada/Makefile-lang.in. This leads me to
> think that for some reason, the ada compiler is not being created. I
> have the gnat-3.15p binary installed.
> 
> Is there something I need to do for gnatgcc? I read somewhere I would
> need to rename gnatgcc but that didn't work.

BTW: gnatlib_and_tools has been made opsolete for the HEAD release.

Martin

-- 
mailto://krischik@users.sourceforge.net
http://www.ada.krischik.com



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

* Re: no rule to make target gnatlib_and_tools
  2004-12-19  8:55 ` Martin Krischik
@ 2004-12-19  9:14   ` u_int32_t
  2004-12-19 15:26     ` Martin Krischik
  0 siblings, 1 reply; 9+ messages in thread
From: u_int32_t @ 2004-12-19  9:14 UTC (permalink / raw)


Yes you are right, I did actually do make -C gcc gnatlib_and_tools.
Still got that result. When I grepped for gnatlib_and_tools it didn't
show up in any makefile except for in ada/Makefile-lang.in which I
thought would be incorporated into build/Makefile.
Anyway, emerge gnat works fine :)




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

* Re: no rule to make target gnatlib_and_tools
  2004-12-19  9:14   ` u_int32_t
@ 2004-12-19 15:26     ` Martin Krischik
  2004-12-19 17:37       ` u_int32_t
  0 siblings, 1 reply; 9+ messages in thread
From: Martin Krischik @ 2004-12-19 15:26 UTC (permalink / raw)


u_int32_t wrote:

> Yes you are right, I did actually do make -C gcc gnatlib_and_tools.
> Still got that result. When I grepped for gnatlib_and_tools it didn't
> show up in any makefile except for in ada/Makefile-lang.in which I
> thought would be incorporated into build/Makefile.
> Anyway, emerge gnat works fine :)

Well as said gnatlib_and_tools is not needed for gcc 4.0 - maybe AdaCore
backported that.

I check that and then change the instructions.

BTW: If you want shared lib as well you need "make -C gcc
gnatlib-shared" ;-)

Martin

-- 
mailto://krischik@users.sourceforge.net
http://www.ada.krischik.com



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

* Re: no rule to make target gnatlib_and_tools
  2004-12-19 15:26     ` Martin Krischik
@ 2004-12-19 17:37       ` u_int32_t
  0 siblings, 0 replies; 9+ messages in thread
From: u_int32_t @ 2004-12-19 17:37 UTC (permalink / raw)


On Sun, 19 Dec 2004 16:26:48 +0100, Martin Krischik wrote:

> Well as said gnatlib_and_tools is not needed for gcc 4.0 - maybe AdaCore
> backported that.
> 
> I check that and then change the instructions.
> 
> BTW: If you want shared lib as well you need "make -C gcc
> gnatlib-shared" ;-)

I apologize for my bad manners: Thanks for replying!

i686-pc-linux-gnu $ make -C gcc gnatlib-shared
    make: Entering directory `/extra/src/i686-pc-linux-gnu/gcc'
    make: *** No rule to make target `gnatlib-shared'.  Stop.
    make: Leaving directory `/extra/src/i686-pc-linux-gnu/gcc'

Doh! I get a feeling the instructions are out of sync with gcc 3.4.3
release. I also had a question about Rident.Restrictions_Info: Does this
no longer exist in gcc >= 3.4.3?

I ask this because I am trying to compile asharp on Linux and I am running
into this roadblock.

Thanks.



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

* Re: no rule to make target gnatlib_and_tools
  2004-12-19  1:27 no rule to make target gnatlib_and_tools sohail
  2004-12-19  8:55 ` Martin Krischik
@ 2004-12-19 18:56 ` christov
  2004-12-19 19:50   ` u_int32_t
  1 sibling, 1 reply; 9+ messages in thread
From: christov @ 2004-12-19 18:56 UTC (permalink / raw)


That's very odd.  It usually works fine for me on, say, RH 9.0.

The top-level configure output is fairly short.  It should say which
directories (targets) the build is configured for.  It should also let
you know if it can not find the Ada-enabled gcc.  GNAT 3.15p must be
before any other compiler in your PATH to use it.  Since FSF gcc 3.3
was deemed good enough to bootstrap later Ada compilers, the option to
have seperate Ada and C bootstrap compilers was removed.

You can also look in /extra/src/build/gcc for gnat1 and gnatbind after
the bootstrap.  If you can't find those then the build never made an
Ada compiler.  Gcc will *always* make a C compiler because that is
needed during the bootstrap process.  I usually explicitly configure C
anyway just as a reminder.

Thinking about your symptoms, the most likely thing is that configure
is not finding the installed GNAT before some other C compiler that
doesn't know about Ada.

    -Chris




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

* Re: no rule to make target gnatlib_and_tools
  2004-12-19 18:56 ` christov
@ 2004-12-19 19:50   ` u_int32_t
  2004-12-20 18:39     ` christov
  0 siblings, 1 reply; 9+ messages in thread
From: u_int32_t @ 2004-12-19 19:50 UTC (permalink / raw)


On Sun, 19 Dec 2004 10:56:52 -0800, christov wrote:

> That's very odd.  It usually works fine for me on, say, RH 9.0.
> 
> The top-level configure output is fairly short.  It should say which
> directories (targets) the build is configured for.  It should also let
> you know if it can not find the Ada-enabled gcc.  GNAT 3.15p must be
> before any other compiler in your PATH to use it.  Since FSF gcc 3.3
> was deemed good enough to bootstrap later Ada compilers, the option to
> have seperate Ada and C bootstrap compilers was removed.
> 
> You can also look in /extra/src/build/gcc for gnat1 and gnatbind after
> the bootstrap.  If you can't find those then the build never made an
> Ada compiler.  Gcc will *always* make a C compiler because that is
> needed during the bootstrap process.  I usually explicitly configure C
> anyway just as a reminder.
> 
> Thinking about your symptoms, the most likely thing is that configure
> is not finding the installed GNAT before some other C compiler that
> doesn't know about Ada.

In fact, I do have gnat installed, the "problem" is that it is prefixed
with gnat*. I suppose I could try aliasing gcc=gnatgcc or something like
that as that obviously would have the C compiler built in.

Thanks



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

* Re: no rule to make target gnatlib_and_tools
  2004-12-19 19:50   ` u_int32_t
@ 2004-12-20 18:39     ` christov
  2004-12-20 21:10       ` u_int32_t
  0 siblings, 1 reply; 9+ messages in thread
From: christov @ 2004-12-20 18:39 UTC (permalink / raw)


u_int32_t wrote:
> In fact, I do have gnat installed, the "problem" is that it is
> prefixed with gnat*. I suppose I could try aliasing gcc=gnatgcc
> or something like that as that obviously would have the C
> compiler built in.

Hmm.

I wasn't questioning whether you had GNAT installed.  You clearly said
that you did, but you did leave out the critical bit of information
about the name transform.  Configure isn't smart enough to go looking
for all possible compilers.  It looks for gcc or cc in the PATH and
takes the first one it finds, unless you force it.  One way to force it
is to set the CC environment variable before running configure.  Try
this (assuming sh semantics):

% cd /extra/src/build
% CC=gnatgcc /extra/src/gcc/configure --prefix=/opt/me
--enable-languages=ada
% (date; make bootstrap; date) >bootstrap.out 2>&1
% (date; make -C gcc gnatlib_and_tools; date) >>bootstrap.out 2>&1

Alternatively you could link gnatgcc as gcc.  I do not think that shell
aliases propagate into the make system.

Good luck,
     Chris




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

* Re: no rule to make target gnatlib_and_tools
  2004-12-20 18:39     ` christov
@ 2004-12-20 21:10       ` u_int32_t
  0 siblings, 0 replies; 9+ messages in thread
From: u_int32_t @ 2004-12-20 21:10 UTC (permalink / raw)


On Mon, 20 Dec 2004 10:39:36 -0800, christov wrote:

> % cd /extra/src/build
> % CC=gnatgcc /extra/src/gcc/configure --prefix=/opt/me
> --enable-languages=ada
> % (date; make bootstrap; date) >bootstrap.out 2>&1
> % (date; make -C gcc gnatlib_and_tools; date) >>bootstrap.out 2>&1

Seems to be working like a charm, thanks!



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

end of thread, other threads:[~2004-12-20 21:10 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-12-19  1:27 no rule to make target gnatlib_and_tools sohail
2004-12-19  8:55 ` Martin Krischik
2004-12-19  9:14   ` u_int32_t
2004-12-19 15:26     ` Martin Krischik
2004-12-19 17:37       ` u_int32_t
2004-12-19 18:56 ` christov
2004-12-19 19:50   ` u_int32_t
2004-12-20 18:39     ` christov
2004-12-20 21:10       ` u_int32_t

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