On Mar 10, 2000, "H . J . Lu" <[EMAIL PROTECTED]> wrote:
> On Fri, Mar 10, 2000 at 01:36:50PM -0300, Alexandre Oliva wrote:
>> On Mar 9, 2000, "H . J . Lu" <[EMAIL PROTECTED]> wrote:
>>
>> > gcc: installation problem, cannot exec
>> > `/work/ia64/bin/cygnus/20000303/gcc/collect2': Argument list too long
>> ^^^^^^^^
>>
>> Hey! This comes up long before libtool's ld-new is ever started.
>> It's the gcc driver that fails to exec collect2. It looks like we've
>> been barking up the wrong tree for all the time. I don't understand
>> how the extra dependencies might have fixed this problem, but, if they
>> have, there's something very strange about your environment. You
>> can't blame libtool for gcc not being able to run collect2 :-)
> I have verified that gcc can run collect2 just fine.
Then please explain how come pexecute prints that message.
I assume you're running on some Unix flavor, probably GNU/Linux, so
the last variant of pexecute is used. The only situation in which
this variant of pexecute() prints install_error_msg is after
attempting to exec() the program:
case 0: /* child */
[snip]
/* Exec the program. */
(*func) (program, argv);
/* Note: Calling fprintf and exit here doesn't seem right for vfork. */
fprintf (stderr, "%s: ", this_pname);
fprintf (stderr, install_error_msg, program);
fprintf (stderr, ": %s\n", xstrerror (errno));
func is either execv or execvp. this_pname is the name of the current
program (gcc); program is the name of the program to be exec()ed
(collect2). I can't think of any way collect2 might arrange for the
process that exec()ed it to print that error message. How did you
make sure that collect2 was properly exec()ed?
--
Alexandre Oliva http://www.ic.unicamp.br/~oliva/ Enjoy Guaranį
Cygnus Solutions, a Red Hat company aoliva@{redhat, cygnus}.com
Free Software Developer and Evangelist CS PhD student at IC-Unicamp
oliva@{lsd.ic.unicamp.br, gnu.org} Write to mailing lists, not to me