Archive: How to build nsis on linux


How to build nsis on linux
Hi all

I am trying to build nsis 2.24 but experiencing the following problem:

[root@beda nsis-2.24-src]# scons SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all NSIS_CONFIG_CONST_DATA_PATH=no PREFIX=/path/to/extracted/zip install-compiler
scons: Reading SConscript files ...
/home/oevsegneev/nsis-2.24-src/SConstruct:210: SyntaxWarning: local name 'path' in 'Distribute' shadows use of 'path' as global in nested scope 'lambda'
def Distribute(files, names, component, path, subpath, alias, install_alias=None):
/home/oevsegneev/nsis-2.24-src/SConstruct:210: SyntaxWarning: local name 'd' in 'Distribute' shadows use of 'd' as global in nested scope 'lambda'
def Distribute(files, names, component, path, subpath, alias, install_alias=None):
/home/oevsegneev/nsis-2.24-src/SConstruct:210: SyntaxWarning: local name 'subpath' in 'Distribute' shadows use of 'subpath' as global in nested scope 'lambda'
def Distribute(files, names, component, path, subpath, alias, install_alias=None):
/home/oevsegneev/nsis-2.24-src/SConstruct:210: SyntaxWarning: local name 'prefix' in 'Distribute' shadows use of 'prefix' as global in nested scope 'lambda'
def Distribute(files, names, component, path, subpath, alias, install_alias=None):
Delete("nsis-04-Apr-2007.cvs")
Delete(".instdist")
Delete(".test")
/home/oevsegneev/nsis-2.24-src/SCons/Config/gnu:178: SyntaxWarning: local name 'original_emitter' in 'add_file_to_emitter' shadows use of 'original_emitter' as global in nested scope 'emitter'
def add_file_to_emitter(env, emitter_name, file):
/home/oevsegneev/nsis-2.24-src/SCons/Config/gnu:178: SyntaxWarning: local name 'file' in 'add_file_to_emitter' shadows use of 'file' as global in nested scope 'emitter'
def add_file_to_emitter(env, emitter_name, file):
Using GNU tools configuration
Checking for linker flag -m32... AttributeError: var:
File "/home/oevsegneev/nsis-2.24-src/SConstruct", line 321:
envs = SConscript('SCons/Config/gnu')
File "/usr/local/lib/scons-0.96.95/SCons/Script/SConscript.py", line 583:
return apply(method, args, kw)
File "/usr/local/lib/scons-0.96.95/SCons/Script/SConscript.py", line 520:
return apply(_SConscript, [self.fs,] + files, subst_kw)
File "/usr/local/lib/scons-0.96.95/SCons/Script/SConscript.py", line 245:
exec _file_ in call_stack[-1].globals
File "/home/oevsegneev/nsis-2.24-src/SCons/Config/gnu", line 86:
conf.CheckLinkFlag('-m32') #
File "/usr/local/lib/scons-0.96.95/SCons/SConf.py", line 555:
ret = apply(self.test, (context,) + args, kw)
File "/home/oevsegneev/nsis-2.24-src/SCons/utils.py", line 54:
result = ctx.TryLink(test, extension)
File "/usr/local/lib/scons-0.96.95/SCons/SConf.py", line 724:
return apply(self.sconf.TryLink, args, kw)
File "/usr/local/lib/scons-0.96.95/SCons/SConf.py", line 525:
return self.TryBuild(self.env.Program, text, extension )
File "/usr/local/lib/scons-0.96.95/SCons/SConf.py", line 479:
nodes = builder(target = target, source = source)
File "/usr/local/lib/scons-0.96.95/SCons/Environment.py", line 190:
return apply(self.builder, (self.env, target, source) + args, kw)
File "/usr/local/lib/scons-0.96.95/SCons/Builder.py", line 606:
return self._execute(env, target, source, OverrideWarner(kw), ekw)
File "/usr/local/lib/scons-0.96.95/SCons/Builder.py", line 540:
source = self.src_builder_sources(env, source, overwarn)
File "/usr/local/lib/scons-0.96.95/SCons/Builder.py", line 667:
smap = SuffixMap(self, env)
File "/usr/local/lib/scons-0.96.95/SCons/Builder.py", line 864:
result = _SuffixMap(builder, env)
File "/usr/local/lib/scons-0.96.95/SCons/Builder.py", line 776:
self.builders_used = list(set(used))
File "/usr/local/lib/scons-0.96.95/SCons/compat/_sets15.py", line 28:
if elem not in self.elems:
File "/usr/local/lib/scons-0.96.95/SCons/Util.py", line 436:
return cmp(self.__subject, other)
File "/usr/local/lib/scons-0.96.95/SCons/Builder.py", line 436:
return cmp(self.__dict__, other.__dict__)
File "/usr/local/lib/python2.1/UserDict.py", line 12:
return cmp(self.data, dict)
File "/usr/local/lib/scons-0.96.95/SCons/Builder.py", line 342:
return cmp(self.var, other.var)

help me please :(


Looks like an incompatibility of Python 2.1 and SCons 0.96.95, though as far as I know, they test with 2.1 as well. Try upgrading Python, if possible. If not, try an older version of SCons like 0.96.93.