[ros-dev] "the input line is too long" bug caused by hpoussin's changes

Colin Finck mail at colinfinck.de
Mon Jun 30 01:38:22 CEST 2008


Hello everyone,

As most devs including me noticed this "the input line is too long" bug
after hpoussin's changes in r34187 to r34191, I did some research on it.
Unfortunately, it looks like it's unfixable if we keep on directly using ld
for linking (as introduced in these revisions) instead of calling the gcc
frontend.

First of all, the "length" of the cmd input line under Windows seems to be
highly affected by quotation marks. If you add a quotation mark to the
working linker command line before hpoussin's commits, it will also be
reported as being too long.
Previously, we didn't use quotation marks in the command line when linking
the binaries.
Now we have to do this because of the changed PROJECT_LFLAGS and
PROJECT_LPPFLAGS variables: They contain the path to i.e. libgcc and as this
path can contain spaces, it has to be put in quotation marks. Just passing
"libgcc.a" without a path doesn't work.
Passing "-lgcc" also doesn't work, because mingw32-ld only seems to search
for libraries in "mingw32/lib", not "lib/gcc/mingw32/4.1.3" as gcc does.

I see no other solution than partly reverting hpoussin's changes and using
gcc for linking again.
If anyone sees another option, please comment or directly commit a fix.

Best regards,

Colin



More information about the Ros-dev mailing list