public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
* Re: cannot build crosstool due to Makefile issues (mixed implicit and normal rules)
@ 2013-08-30 16:00 crifan
  2013-08-31  4:56 ` Aijaz Baig
  0 siblings, 1 reply; 4+ messages in thread
From: crifan @ 2013-08-30 16:00 UTC (permalink / raw)
  To: aijazbaig1.new; +Cc: crossgcc

I have encounted same issue:
during step of Installing kernel headers, got error:
Makefile:119: recipe for target `headers_install’ failed

and, your concern about "kernel might be full of such old fashioned 
makefiles" is same with me,
so, finnaly, I fix this error by:
change make from v3.82 to v3.81
and most important is:
actually the crosstool-ng, have realized this issue,
so, you can find the solution for this issue in:
crosstool-ng-1.18.0\docs\B – Known issues.txt
which is:
"""
--------------------------------
Symptoms:
   glibc start files and headers fail with: [/usr/include/limits.h] Error 
1

Explanations:
   Old glibc (and eglibc) Makefiles break with make-3.82.

Status:
   CURRENT

Fix:
   None so far. It would require some glibc/eglibc hacking.

Workaround:
   There two possible workarounds:
   1- ask crosstool-NG to build make-3.81 just for this build session:
      Select the following options:
         Paths and misc options  --->
             [*] Try features marked as EXPERIMENTAL
         Companion tools  --->
             [*] Build some companion tools
             [*]   make
   2- manually install make-3.81 to take precedence over the system make.

--------------------------------
Symptoms:
   The build fails with "mixed implicit and normal rules. Stop."

Explanations:
   Old glibc (and eglibc) Makefiles break with make-3.82.

Status:
   CURRENT

Fix:
   None so far. See above issue.

Workaround:
   See above issue.

--------------------------------
"""
so, final solution for:
Makefile:xxx: *** mixed implicit and normal rules.  Stop.
is:
in ct-nt menuconfig, choose crosstool-ng's v3.81 make

steps:
ct-nt menuconfig
->
Paths and misc options  --->
select:
     [*] Try features marked as EXPERIMENTAL
->
then goto:
Companion tools  --->
select:
[*] Build some companion tools
then can choose:
[*]   make

that will:
let crosstool-ng, use its v3.81, instead of your v3.82 make of your 
environment
to do make, this will avoid possibly, many such kind of "mixed implicit 
and normal rules.  Stop" in following build.

Crifan Li

> Hello.
> 
> I have downloaded the latest version of the tool aka 1.18. I've
> configured it for powerpc-unknown-nofpu-linux-gnu.
> 
> In my first iteration I encountered an error build the mfpr library
> and on searching the internet came across a similar issue by a user
> earlier in which Yann advised the fellow to manually upgrade his mfpvr
> library. Hence a quick menuconfig later in which I selected a higher
> version of mfpr, this issue seemed to have ceased.
> 
> Later my build failed during the kernel header installation phase (as
> part of Installing pass-1 core C compiler) and on probing build.log
> realized that it is due to the concerned Makefile (within
> arch/powerpc/kernel/) having a format which the newer makefile on my
> machine (version 3.82) does not like. Now I believe the kernel might
> be full of such old fashioned makefiles so I switched to a newer
> kernel (2.6.36). The default was set to use 2.6.31.
> 
> Having done that, the 'Installing kernel headers' phase went fine.
> However this time, it failed in the 'Installing C library headers &
> start files' phase. This is what the build.log file has to say now:
> 
> [ALL  ]    /usr/bin/make  subdir=manual -C manual ..=../ 
> install-headers
> [ALL  ]    make[3]: Entering directory
> `/home/aijazbaig1/crosstoolchain/.build/src/glibc-2.9/manual'
> [ALL  ]    Makefile:240: *** mixed implicit and normal rules.  Stop.
> [ALL  ]    make[3]: Leaving directory
> `/home/aijazbaig1/crosstoolchain/.build/src/glibc-2.9/manual'
> [ERROR]    make[2]: *** [manual/install-headers] Error 2
> 
> This one is again the same problem encountered before. I could again
> select a higher version via menuconfig and continue only to fail at
> some other step.
> 
> Now I want to know whether this is the case for everyone or am I doing
> something wrong here. Do I need to downgrade my Make or use a lower
> version of Make (3.81 instead of the default 3.82 on my host)
> temporarily for this to work?
> 
> I am really stumped on this one. Keen to hear your suggestions, replies 
> etc.
> 
> Regards.
> 

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 4+ messages in thread
* cannot build crosstool due to Makefile issues (mixed implicit and normal rules)
@ 2013-08-30  0:18 Aijaz Baig
  0 siblings, 0 replies; 4+ messages in thread
From: Aijaz Baig @ 2013-08-30  0:18 UTC (permalink / raw)
  To: crossgcc

Hello.

I have downloaded the latest version of the tool aka 1.18. I've
configured it for powerpc-unknown-nofpu-linux-gnu.

In my first iteration I encountered an error build the mfpr library
and on searching the internet came across a similar issue by a user
earlier in which Yann advised the fellow to manually upgrade his mfpvr
library. Hence a quick menuconfig later in which I selected a higher
version of mfpr, this issue seemed to have ceased.

Later my build failed during the kernel header installation phase (as
part of Installing pass-1 core C compiler) and on probing build.log
realized that it is due to the concerned Makefile (within
arch/powerpc/kernel/) having a format which the newer makefile on my
machine (version 3.82) does not like. Now I believe the kernel might
be full of such old fashioned makefiles so I switched to a newer
kernel (2.6.36). The default was set to use 2.6.31.

Having done that, the 'Installing kernel headers' phase went fine.
However this time, it failed in the 'Installing C library headers &
start files' phase. This is what the build.log file has to say now:

[ALL  ]    /usr/bin/make  subdir=manual -C manual ..=../ install-headers
[ALL  ]    make[3]: Entering directory
`/home/aijazbaig1/crosstoolchain/.build/src/glibc-2.9/manual'
[ALL  ]    Makefile:240: *** mixed implicit and normal rules.  Stop.
[ALL  ]    make[3]: Leaving directory
`/home/aijazbaig1/crosstoolchain/.build/src/glibc-2.9/manual'
[ERROR]    make[2]: *** [manual/install-headers] Error 2

This one is again the same problem encountered before. I could again
select a higher version via menuconfig and continue only to fail at
some other step.

Now I want to know whether this is the case for everyone or am I doing
something wrong here. Do I need to downgrade my Make or use a lower
version of Make (3.81 instead of the default 3.82 on my host)
temporarily for this to work?

I am really stumped on this one. Keen to hear your suggestions, replies etc.

Regards.

--
For unsubscribe information see http://sourceware.org/lists.html#faq

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

end of thread, other threads:[~2013-08-31  9:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-30 16:00 cannot build crosstool due to Makefile issues (mixed implicit and normal rules) crifan
2013-08-31  4:56 ` Aijaz Baig
     [not found]   ` <CAOYrRwoi=BSa+iJcSWEWEA5dbU4zqoSM0N-hq2HHbM8odKyqiA at mail dot gmail dot com>
2013-08-31  9:36     ` Crifan Li
  -- strict thread matches above, loose matches on Subject: below --
2013-08-30  0:18 Aijaz Baig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).