[Scons-users] crash using --tree=all,status
Mark Diekhans
markd at kermodei.com
Sun Mar 12 21:04:24 EDT 2017
here is simple case that reproduces the exception on
scons --tree=all,status
https://hgwdev.soe.ucsc.edu/~markd/scons/treeBug.tar.gz
Bill Deegan <bill at baddogconsulting.com> writes:
> Do you have a simple SConstruct which will cause this issue?
> We like to add tests to cover any bugs we fix to make sure they don't get
> broken..
>
> On Sun, Mar 12, 2017 at 4:34 PM, Mark Diekhans <markd at kermodei.com> wrote:
>
>
> I am getting the below error, the attached patched address the problem,
> although it might now be the most desired change::
>
> % scons --tree=all,status >&log
> scons: Reading SConscript files ...
> scons: done reading SConscript files.
> scons: Building targets ...
> /opt/rh/devtoolset-3/root/usr/bin/g++ -o build/sonLib/sonLib_Tests
> -Wl,-rpath=/hive/groups/recon/local/lib build/sonLib/sonLib/tests/
> allTests.o build/sonLib/sonLib/tests/sonLibAlignTest.o build/sonLib/sonLib/
> tests/sonLibCacheTest.o build/sonLib/sonLib/tests/sonLibCommonTest.o build/
> sonLib/sonLib/tests/sonLibCompressionTest.o build/sonLib/sonLib/tests/
> sonLibConnectivityTests.o build/sonLib/sonLib/tests/
> sonLibDoubleTuplesTest.o build/sonLib/sonLib/tests/
> sonLibEdgeContainerTests.o build/sonLib/sonLib/tests/sonLibEulerTest.o
> build/sonLib/sonLib/tests/sonLibExceptTest.o build/sonLib/sonLib/tests/
> sonLibFileTest.o build/sonLib/sonLib/tests/sonLibGraphTest.o build/sonLib/
> sonLib/tests/sonLibHashTest.o build/sonLib/sonLib/tests/
> sonLibIntTuplesTest.o build/sonLib/sonLib/tests/sonLibListTest.o build/
> sonLib/sonLib/tests/sonLibPosetAlignmentTest.o build/sonLib/sonLib/tests/
> sonLibRandomTest.o build/sonLib/sonLib/tests/sonLibSetTest.o build/sonLib/
> sonLib/tests/sonLibSortedSetTest.o build/sonLib/sonLib/tests/
> sonLibStringTest.o build/sonLib/sonLib/tests/sonLibTreapTest.o build/sonLib
> /sonLib/tests/sonLibTreeTest.o build/sonLib/sonLib/tests/sonLibTuplesTest.o
> build/sonLib/sonLib/tests/stMatrixTest.o build/sonLib/sonLib/tests/
> stPhylogenyTest.o build/sonLib/sonLib/tests/stThreadPoolTest.o build/sonLib
> /sonLib/tests/stUnionFindTest.o -Lbuild/sonLib/lib -Lmods/sonLib/lib -L/
> hive/groups/recon/local/lib -lsonlib -lcutest -ltokyocabinet -lkyototycoon
> -lkyotocabinet -lz -lbz2 -lpthread -lm -lstdc++
> /opt/rh/devtoolset-3/root/usr/libexec/gcc/x86_64-redhat-linux/4.9.2/ld:
> cannot find -lsonlib
> /opt/rh/devtoolset-3/root/usr/libexec/gcc/x86_64-redhat-linux/4.9.2/ld:
> cannot find -lcutest
> collect2: error: ld returned 1 exit status
> scons: *** [build/sonLib/sonLib_Tests] Error 1
> E = exists
> R = exists in repository only
> b = implicit builder
> B = explicit builder
> S = side effect
> P = precious
> A = always build
> C = current
> N = no clean
> H = no cache
>
> [ B ]+-output/testbin/sonLib_Tests
> [ B ] +-build/sonLib/sonLib_Tests
> [E B C ] +-build/sonLib/sonLib/tests/allTests.o
> scons: building terminated because of errors.
> AttributeError: 'NoneType' object has no attribute 'get_contents':
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Script/Main.py", line 1346:
> _exec_main(parser, values)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Script/Main.py", line 1309:
> _main(parser)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Script/Main.py", line 1091:
> nodes = _build_targets(fs, options, targets, target_top)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Script/Main.py", line 1283:
> jobs.run(postfunc = jobs_postfunc)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Job.py", line 111:
> self.job.start()
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Job.py", line 218:
> task.postprocess()
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Script/Main.py", line 288:
> tp.display(t)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Script/Main.py", line 419:
> SCons.Util.print_tree(t, func, prune=self.prune, showtags=s)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Util.py", line 288:
> print_tree(children[-1], child_func, prune, idx, margin, visited)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Util.py", line 286:
> print_tree(C, child_func, prune, idx, margin, visited)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Util.py", line 286:
> print_tree(C, child_func, prune, idx, margin, visited)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Util.py", line 260:
> tags.append(' C'[IDX(root.is_up_to_date())])
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Node/FS.py", line 3286:
> if not self.changed(r):
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Node/FS.py", line 3241:
> has_changed = SCons.Node.Node.changed(self, node)
> File "/cluster/home/markd/opt/centos6.0/x86_64/lib/python2.7/
> site-packages/scons-2.5.1/SCons/Node/__init__.py", line 1464:
> contents = self.get_executor().get_contents()
>
> --- Node/.emacs.bak/__init__.py.~1~ 2017-02-22 20:13:21.411291000 -0800
> +++ Node/__init__.py 2017-03-12 13:26:33.766542409 -0700
> @@ -1461,9 +1461,9 @@
> if t: Trace(': %s changed' % child)
> result = True
>
> - contents = self.get_executor().get_contents()
> - if self.has_builder():
> + if self.has_builder() and (self.get_executor() is not None):
> import SCons.Util
> + contents = self.get_executor().get_contents()
> newsig = SCons.Util.MD5signature(contents)
> if bi.bactsig != newsig:
> if t: Trace(': bactsig %s != newsig %s' % (bi.bactsig,
> newsig))
>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
>
>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
More information about the Scons-users
mailing list