Jump to content

Problem with MAKE


robinfawell
 Share

Recommended Posts

I have been trying out a few tutorial programs and the SRIO example. Everything was working OK but now I have a consistent error.

Microsoft Windows XP [Version 5.1.2600]

(C) Copyright 1985-2001 Microsoft Corp.


E:\Documents and Settings\robin>cd  mios32

The system cannot find the path specified.


E:\Documents and Settings\robin>cd\


E:\>cd mios32


E:\MIOS32>cd trunk


E:\MIOS32\trunk>cd apps


E:\MIOS32\trunk\apps>cd examples


E:\MIOS32\trunk\apps\examples>cd srio


E:\MIOS32\trunk\apps\examples\srio>make

E:\mios32\trunk/include/makefile/common.mk:123: *** multiple target patterns.  S

top.

E:\MIOS32\trunk\apps\examples\srio>

What would cause the multiple target patterns referred to ?

Link to comment
Share on other sites

  • 3 weeks later...

mmm...for me the link doesn´t work at all... getting "An Error occurred" and "[#10342] We could not determine which forum this topic is in. "

just stumbled over this topic cause i got the same "multiple target patterns. stop." message when trying to compile via make.

any hints?

Edited by nuke
Link to comment
Share on other sites

The link points towards the Programmer's Lounge, which you don't have access to (ask TK about getting access).

Meanwhile here's the solution proposed there by TK:

Ok, today I tried this with my office PC, and can confirm that I see the same errors.

The <drive>: and backslashes cause the issue.

If you look into the project_out directory (where binaries will be generated), you will find a "mios32trunk" directory, but the intended name was "mios32/trunk" (derived from "mios32\trunk)

Solution:

specify MIOS32_PATH in Unix style.

E.g., write:


set MIOS32_PATH=/C/mios32/trunk
[/code]

if MIOS32 repository is located at your C: drive

I hope that this will work for every DOS/Windows user - because once you noticed how fast code will be recompiled after changes in source files, you don't want to miss this feature anymore!

Best Regards, Thorsten.

Link to comment
Share on other sites

ahh i see ...ok

hey the new unix style PATH works...now there´s something going...getting closer now

thnx for that nils...

but got a new message:

C:\PIC\trunk\apps\sequencers\midibox_seq_v4>make

rm -f project.hex

c:/program files/codesourcery/sourcery g++ lite/bin/../lib/gcc/arm-none-eabi/4.4.1/../../../../arm-none-eabi/bin/ld.exe:

c:/PIC/trunk/apps/sequencers/midibox_seq_v4/project.elf section `._usrstack' will not fit in region `RAM'

c:/program files/codesourcery/sourcery g++ lite/bin/../lib/gcc/arm-none-eabi/4.4.1/../../../../arm-none-eabi/bin/ld.exe:

region `RAM' overflowed by 112 bytes

collect2: ld returned 1 exit status

make: *** [/c/PIC/trunk/apps/sequencers/midibox_seq_v4/project.elf] Error 1

mmm...somethings not quite right i think

these are my paths for info:

C:\Program Files\gputils\bin;C:\Program Files\SDCC\bin;C:\PERL\bin\;C:\Program Files\CodeSourcery\Sourcery G++ Lite\bin

and my additional system variables:

MIOS32_BIN_PATH=/C/pic/trunk/bin

MIOS32_BOARD=MBHP_CORE_STM32

MIOS32_FAMILY=STM32F10x

MIOS32_GCC_PREFIX=arm-none-eabi

MIOS32_LCD=clcd

MIOS32_PATH=/C/pic/trunk

MIOS32_PROCESSOR=STM32F103RE

did i miss something??

Link to comment
Share on other sites

What version of the CodeSourcery toolchain are you using?

It looks like the version you are using is based on gcc 4.4.1 so I suspect it is the latest 2010q1-188 release which uses Newlib 1.17.

Over the last few days, TK and I have been "playing" with various gcc/newlib combinations in an attempt to find the perfect combination which works on all platforms. This is taking quite a long time as each change requires a 30 minute rebuild of the toolchain :)

It appears that later versions of Newlib are compiling to larger binaries and as SEQv4 almost fills the RAM of the current CORE32, our current thought is that an older version of Newlib may be better as it generates smaller code and most of the enhancements are irrelevant to MIDIbox anyway!

If you are "desperate" to recompile, I suggest you try the CodeSourcery 2008q3-66 release which uses Newlb 1.16. It is available here

Cheers

Phil

Link to comment
Share on other sites

  • 1 year later...

Hey,

I have tried to compile SeqV4 and that didn't work because of an overflow.

I then downloaded the other version of the CodeSourcery, using the link Philetaylor put in his msg.

But there is still an overflow, at the end of trying to compile, I get:

Creating object file for osc_client.c

Creating object file for mini_cpp.cpp

Creating object file for freertos_heap.cpp

d:/mios32_tools/bin/../lib/gcc/arm-none-eabi/4.3.2/../../../../arm-none-eabi/bin

/ld.exe: project_build/project.elf section ._usrstack will not fit in region RAM

d:/mios32_tools/bin/../lib/gcc/arm-none-eabi/4.3.2/../../../../arm-none-eabi/bin

/ld.exe: region RAM overflowed by 56 bytes

collect2: ld returned 1 exit status

make: *** [project_build/project.elf] Error 1

Does anybody know how I can fix this?

Cheers

Jef

Link to comment
Share on other sites

You can't fix this, but I can do this for you ;-)

The linker error was related to one of the last changes in mios32/LPC17xx/mios32_uart.c, which is fixed now.

Please update the repository and compile again with the original MIOS32 tool chain (don't use the Code Sourcery package mentioned by Phil, because it will cause other problems - you have to use exactly the same version like me for a stable build!)

Best Regards, Thorsten.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...