avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [avr-gcc-list] Problem building avr-gcc on MinGW


From: Ebert, Rolf
Subject: RE: [avr-gcc-list] Problem building avr-gcc on MinGW
Date: Thu, 6 Feb 2003 10:28:36 +0100

Thanks for the hints, Joerg.  I think, however, that is already far too deep
in the mud.

Eric has certainly achieved building WinAVR. If he had had the same problem,
he already has resolved it; no use for me to do it a second time.  The
native compiler on MinGW should also have the same problem, if it exists at
all. I therefore think, that it is a configuration problem, not really a
technical one how to implement fork and pipe functionality on Windows.

Thus, the real question actually is: 

        "what patches and other programs (autoconf, flex, etc.) are needed
and what options are to be used in order to build avr-gcc on MinGW?"


        Rolf

P.S. what is collect2 good for? is it needed at all?

-----Original Message-----
From: Joerg Wunsch [mailto:address@hidden 
Sent: Thursday, February 06, 2003 10:07 AM
To: address@hidden
Subject: Re: [avr-gcc-list] Problem building avr-gcc on MinGW


>I think I am almost through building an AVR cross compiler on MinGW.
>There seems to be only a little problem left.  When linking
>collect2.exe I get unresolved symbols kill, pipe, and fork:

% fgrep kill /junk/avr-gcc/work/gcc-3.3.2002.09.10/gcc/collect2.c
  kill (getpid (), signo);

OK, in that case, you're lucky.  "raise(signo);" should do the same
using only standard C functions.

With pipe() and fork(), things are going to become more difficult.
Under Unix, fork() creates a new process by cloning the current
process 1:1.  (This is the only way to create a new process under
Unix.)  AFAICT, there is no equivalent to this technique on Windows.
The child process is then often set up to execute the image of
a new program in the context of this process.  IMHO, the combined
action of this fork() + exec*() [execve, execvl, ...] is about the
same that DOS/Windows would describe as exec().

Still, you gotta figure out how to establish a pipe between both
processes.
-- 
J"org Wunsch                                           Unix support engineer
address@hidden        http://www.interface-systems.de/~j/

_______________________________________________
avr-gcc-list mailing list
address@hidden
http://www.avr1.org/mailman/listinfo/avr-gcc-list


reply via email to

[Prev in Thread] Current Thread [Next in Thread]