On 13-Nov-2013 22:26, Kris De Gussem wrote:
Updating devlibs to r50 and subsequently
btool clean btool
solved it for me.
Not for me though. I hacked btool to capture the problem command, edited it into a single line file, replaced all the \ with /, and then tried to run it this way in Msys:
% . longlink.txt
And it emitted the exact same error message. I thought it might be a command line length issue, since that command is 30152 characters long. Edited it into one clause per line and tried:
mingw32-g++ @longlink3.txt
but that did the same thing too. Tried it with -v on the line and I see why that would not help - it recreated the super long line and tried to pass it to
c:/progs/mingw/bin/../libexec/gcc/mingw32/4.6.2/collect2.exe
Sort of defeats the purpose of @file, eh?
mingw32-g++ does work from the command line to compile and link for short test cases, and obviously it worked up to that point in btool for compile.
Working hypothesis - command line too long. Find redundant clauses and eliminate them, will it link then?
There are a whole bunch of "-Lc:/progs/devlibs50/lib", maybe 40 or 50, reduced that to 1. Then did this again:
mingw32-g++ @longlink3.txt
and it worked.
Conclusion - inkscape is bumping up against a command line length limit in Windows XP, mingw, or Msys. There are some more redundant lines still in that file, but not all that many:
$ wc longlink3.txt 936 936 28665 longlink3.txt $ sort longlink3.txt | uniq | wc 903 903 28305 % grep build longlink3.txt | wc 844 845 27592
Perhaps it is time to consider linking subdirectories of build into their own static libraries, then link all of them together into inkscape?
Either that or I need a different mingw/msys that has a higher command line limit.
I think I need to file a bug on this...
Regards,
David Mathog mathog@...1176... Manager, Sequence Analysis Facility, Biology Division, Caltech