Agreed. I actually looked into doing this once briefly (primarily to reduce link time), but it looked like it wasn't going to be trivial, so I punted.
On Thu, Apr 13, 2017 at 10:09 AM, Andreas Hansson <[email protected]> wrote: > The best solution, in my view, would be to link the various subdirectories > into static libraries, libbase.a etc, and do so independent of the ISA > that is being built. Everything besides the arch and dev tree should then > be able to be built once, and the linking also ends up being hierarchical. > > Andreas > > On 13/04/2017, 17:50, "gem5-dev on behalf of Gabe Black" > <[email protected] on behalf of [email protected]> wrote: > > >Oh, I bet you're right. They actually spawn something like 'sh', '-c', ' > >'.join(args), and I bet sh (which is symlinked to /bin/bash) is blowing up > >because the command line is very long. I remember my terminal asking if I > >really wanted to copy/paste something like 129K characters when trying to > >copy the command line to run it outside of scons. > > > >Now to figure out how to fix it... > > > >On Thu, Apr 13, 2017 at 8:02 AM, Beckmann, Brad <[email protected]> > >wrote: > > > >> Have you investigated the length of the linker command when building > >>from > >> outside the gem5 directory? In the past, we've seen that mysterious > >>error > >> 127 because the linker stage uses a shell command length that exceeds > >>the > >> length supported by the OS. 64KB I believe. I suspect that the > >>filenames > >> are longer when building outside of gem5, thus it only happens in that > >> situation. The linker command may be shorter using clang as well. > >> > >> Brad > >> > >> > >> > >> -----Original Message----- > >> From: gem5-dev [mailto:[email protected]] On Behalf Of Gabe > >>Black > >> Sent: Thursday, April 13, 2017 1:53 AM > >> To: gem5 Developer List <[email protected]> > >> Subject: [gem5-dev] scons question > >> > >> Hi folks. I'm fighting with a very confusing problem with scons at the > >> moment. For reasons I haven't determined, when I have things set up to > >> build when scons is run from outside the gem5 directory (using -C), it > >> fails the final linker step with error 127 and no other output 100% of > >>the > >> time. If I run from within the gem5 directory everything works fine. > >> > >> I did some reading, and bash reports error 127 when it can't find the > >> command you asked it to run. To determine if that might be the problem, > >>I > >> modified scons to run "which" on each command it was about to spawn > >>before > >> it did, to make sure it resolved to something. That worked just fine. > >>If I > >> run the command manually, it returns exit code 0. If I take the > >>environment > >> scons tries to run g++ under and partially duplicate that with a script > >>and > >> env -i, it still succeeds. > >> > >> If I run with clang instead of g++, I get the same behavior which makes > >>me > >> think it's not g++ doing something weird, it's scons. I can't for the > >>life > >> of me figure out what though, and I can't seem to get any information to > >> work with other than this mysterious error 127. > >> > >> If any of you have any idea why it's doing what it's doing, or if > >>there's > >> any information I can gather that might help, I would be very happy to > >>hear > >> it. > >> > >> Gabe > >> _______________________________________________ > >> gem5-dev mailing list > >> [email protected] > >> http://m5sim.org/mailman/listinfo/gem5-dev > >> _______________________________________________ > >> gem5-dev mailing list > >> [email protected] > >> http://m5sim.org/mailman/listinfo/gem5-dev > >_______________________________________________ > >gem5-dev mailing list > >[email protected] > >http://m5sim.org/mailman/listinfo/gem5-dev > > IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the > information in any medium. Thank you. > _______________________________________________ > gem5-dev mailing list > [email protected] > http://m5sim.org/mailman/listinfo/gem5-dev > _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
