[Scons-users] linker command under windows not working (too long)

Philipp Kraus philipp.kraus at flashpixx.de
Sun Mar 31 08:34:26 EDT 2013


Is there an example for the callable class? Because which information must be returned by the callable method?


Am 31.03.2013 um 03:17 schrieb Bill Deegan:


> Won't TEMPFILE work for this?

>

> A callable class. You can set an Environment variable to this,

> then call it with a string argument, then it will perform temporary

> file substitution on it. This is used to circumvent the long command

> line limitation.

>

> Example usage:

> env["TEMPFILE"] = TempFileMunge

> env["LINKCOM"] = "${TEMPFILE('$LINK $TARGET $SOURCES')}"

>

> By default, the name of the temporary file used begins with a

> prefix of '@'. This may be configred for other tool chains by

> setting '$TEMPFILEPREFIX'.

>

> env["TEMPFILEPREFIX"] = '-@' # diab compiler

> env["TEMPFILEPREFIX"] = '-via' # arm tool chain

>

> -Bill

>

>

> On Sat, Mar 30, 2013 at 11:26 AM, Philipp Kraus <philipp.kraus at flashpixx.de> wrote:

> Hi,

>

>

>

> thanks for this idea but I don't use the env.Object call, I call env.SharedLibrary direct in the build script, so the *.o file is created by the dependency graph that is build by Scons.

>

> So I need to change my script for the MinGW toolset and create the object files first and referenced them via the file. It should be a IMHO a "hacking solution".

>

>

>

> Thanks a lot, so I can test my build script

>

>

>

> Phil

>

>

>

>

>

> On 2013-03-30 19:07:42 +0100, Brady Johnson said:

>

>

>

>

>

> You can use response files, (supported by both gcc and msvc) which allows you to list several object files, etc in a file, then refer to that file on the command line prepending it with the '@' symbol. Here is a question/answer on Stack Overflow that addresses this: http://stackoverflow.com/q/15242177/1158895

>

>

>

> Notice, though that SCons wont read what's in the response file, so dependency checking wont work as expected. I addressed this in my answer to the Stack Overflow question.

>

>

>

> Hope that helps,

>

>

>

> Brady

>

>

>

>

>

>

>

> On Sat, Mar 30, 2013 at 3:07 PM, Philipp Kraus <philipp.kraus at flashpixx.de> wrote:

>

> Hello,

>

>

>

> I try to build Irrlicht engine with mingw toolset under Scons. The compiler calls works well, but the last linker command to build the shared library creates the error, that the command length is reached.

>

> MS describe the probleme here http://support.microsoft.com/kb/830473/en-us

>

> The command shows:

>

>

>

> g++ -shared -o Irrlicht.dll <here all *.o files> -Wl,--out-implib,libIrrlicht.a

>

>

>

> I don't know how I can solve this problems. The problem exists only with the MinGW toolset under MSVC the problem does not exists.

>

>

>

> Thanks for help

>

>

>

> Phil

>

>

>

>

> _______________________________________________

> Scons-users mailing list

> Scons-users at scons.org

> http://four.pairlist.net/mailman/listinfo/scons-users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://four.pairlist.net/pipermail/scons-users/attachments/20130331/71e4e7af/attachment.html>


More information about the Scons-users mailing list