[Scons-users] Problems with env.Install()
William Deegan
bill at baddogconsulting.com
Fri Jan 25 02:57:06 EST 2013
Michel,
On Jan 24, 2013, at 3:59 PM, Michel Lestrade <michel.lestrade at crosslight.com> wrote:
> Hi,
>
> I think the documentation is pretty clear that you can install multiple targets at the same time but I have some trouble making that work.
>
> What I am doing is building up a list of DLLs used by my test programs in environment variable and then installing those in my build folders:
>
>> env['DLLS'] = SCons.Node.NodeList()
Why do this?
>> .....
>> env.Append(DLLS=pthread[0])
>> etc .... (more DLLS added in SConscript)
>
> The list appears to be populated correctly but env.Install() only copies the last item:
>
>> for x in env['DLLS']: print 'Debug:', x.abspath
>> env.Install('scotch_dll',env['DLLS'])
>
> which produces the following output:
>
>> Debug: D:\Source\MUMPS_scons\build\pthread64\pthread64.dll
>> Debug: D:\Source\MUMPS_scons\build\scotch64\scotch_wexit64.dll
>> scons: done reading SConscript files.
>> scons: Building targets ...
>> Install file: "build\scotch64\scotch_wexit64.dll" as "build\scotch64\scotch_dll\
>> scotch_wexit64.dll"
>> scons: done building targets.
>
> Before doing this, I deleted all the DLLs in that folder so it is not simply that this single build target was missing. After scons finishes, only 1 DLL is in my scotch_dll directory instead of the expected 2. It's maddening that something so simple does not work. Even doing it the brute force way (for x in env['DLLS']: env.Install('scotch_dll',x)) produces the same behavior.
>
> As a complete newbie, am I missing something obvious ?
You need to post more of your logic to be able to help you.
-Bill
More information about the Scons-users
mailing list