[Scons-users] Need help debugging my build

William Blevins wblevins001 at gmail.com
Thu Jun 4 11:11:25 EDT 2015


Actually, it may be related specifically to how symlinks are copied.

I know there is a patch for it that will be available in the next release.
Try rolling back to 2.4.3.

V/R,
William

On Thu, Jun 4, 2015 at 11:09 AM, William Blevins <wblevins001 at gmail.com>
wrote:

> I'm not sure how we can help.  You haven't provided us with much context.
>
> In general, you can debug your build using "--debug" and "--tree"
> options.  Please see the User's Guide.
>
> V/R,
> William
>
> On Thu, Jun 4, 2015 at 10:31 AM, Ganssauge, Gottfried <
> Gottfried.Ganssauge at haufe-lexware.com> wrote:
>
>>  My build – which is somewhat large – normally runs fine using
>> scons-local-2.3.4 with python2.7.6 on Ubuntu Linux-14.04
>>
>> But when I’m starting the same build twice in a row I’d expect it to
>> rebuild nothing at all the second time through.
>> The actual targets which I request aren’t rebuilt in fact but some
>> intermediate targets.
>>
>> For example:
>>
>> gotti at manta ~/source/sourcecode-cd $ scons packages
>> scons: Reading SConscript files ...
>> ... Lots of configuration checks removed ...
>> scons: done reading SConscript files.
>> scons: Building targets ...
>> Linking OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768
>> Linking
>> OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768
>> Linking
>> OptiSearch/src/osrtcl/linux-x86_64-gcc/Release/libosrtcl.so.6.0.2768
>> OptiSearch/src/osrtcl/linux-x86_64-gcc/Release/osdb.os: In function
>> `mkworkdir':
>> /home/gotti/source/sourcecode-cd/OptiSearch/src/cp-iface/osdb.cpp:438:
>> warning: the use of `tempnam' is dangerous, better use `mkstemp'
>> OptiSearch/src/osrtcl/linux-x86_64-gcc/Release/osdb.os: In function
>> `mkdtemp':
>> /home/gotti/source/sourcecode-cd/OptiSearch/src/cp-iface/osdb.cpp:199:
>> warning: the use of `mktemp' is dangerous, better use `mkstemp'
>> or `mkdtemp'
>> Linking HitSort/linux-x86_64-gcc/Release/libhitsort.so.5.0.2768
>> Linking OSI/osidll/linux-x86_64-gcc/Release/libosi.so.9.0.2768
>> Linking OSI/adust/linux-x86_64-gcc/Release/libadjustdll.so.9.0.2768
>> Linking
>> OSI/gen_updatedb/linux-x86_64-gcc/Release/libgenupdatedb.so.1.0.2768
>> Linking OSI/ositcl/linux-x86_64-gcc/Release/libositcl.so.6.0.2768
>> scons: `packages' is up to date.
>> scons: done building targets.
>> gotti at manta ~/source/sourcecode-cd $ scons/scons.py --debug=explain
>> packages
>> scons: Reading SConscript files ...
>> ... Lots of configuration checks removed ...
>> scons: done reading SConscript files.
>> scons: Building targets ...
>> scons: rebuilding
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768' because
>> the contents of the build action changed
>>                action: SharedFlagChecker(target, source, env)
>>                        VersionedSharedLibrary(target, source, env)
>> Linking OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768
>> scons: rebuilding
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768'
>> because:
>>
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768' is no
>> longer a dependency
>>
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768' is a
>> new dependency
>> Linking
>> OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768
>> scons: rebuilding
>> `OptiSearch/src/osrtcl/linux-x86_64-gcc/Release/libosrtcl.so.6.0.2768'
>> because:
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> no longer a dependency
>>
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768' is no
>> longer a dependency
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> a new dependency
>>
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768' is a
>> new dependency
>> Linking
>> OptiSearch/src/osrtcl/linux-x86_64-gcc/Release/libosrtcl.so.6.0.2768
>> OptiSearch/src/osrtcl/linux-x86_64-gcc/Release/osdb.os: In function
>> `mkworkdir':
>> /home/gotti/source/sourcecode-cd/OptiSearch/src/cp-iface/osdb.cpp:438:
>> warning: the use of `tempnam' is dangerous, better use `mkstemp'
>> OptiSearch/src/osrtcl/linux-x86_64-gcc/Release/osdb.os: In function
>> `mkdtemp':
>> /home/gotti/source/sourcecode-cd/OptiSearch/src/cp-iface/osdb.cpp:199:
>> warning: the use of `mktemp' is dangerous, better use `mkstemp'
>> or `mkdtemp'
>> scons: rebuilding
>> `HitSort/linux-x86_64-gcc/Release/libhitsort.so.5.0.2768' because the
>> contents of the build action changed
>>                action: SharedFlagChecker(target, source, env)
>>                        VersionedSharedLibrary(target, source, env)
>> Linking HitSort/linux-x86_64-gcc/Release/libhitsort.so.5.0.2768
>> scons: rebuilding
>> `OSI/osidll/linux-x86_64-gcc/Release/libosi.so.9.0.2768' because:
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> no longer a dependency
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> a new dependency
>> Linking OSI/osidll/linux-x86_64-gcc/Release/libosi.so.9.0.2768
>> scons: rebuilding
>> `OSI/adust/linux-x86_64-gcc/Release/libadjustdll.so.9.0.2768' because:
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> no longer a dependency
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> a new dependency
>> Linking OSI/adust/linux-x86_64-gcc/Release/libadjustdll.so.9.0.2768
>> scons: rebuilding
>> `OSI/gen_updatedb/linux-x86_64-gcc/Release/libgenupdatedb.so.1.0.2768'
>> because:
>>
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768' is no
>> longer a dependency
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> no longer a dependency
>>
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768' is a
>> new dependency
>>
>> `OptiSearch/src/tools/linux-x86_64-gcc/Release/libosrtools.so.5.0.2768' is
>> a new dependency
>> Linking
>> OSI/gen_updatedb/linux-x86_64-gcc/Release/libgenupdatedb.so.1.0.2768
>> scons: rebuilding
>> `OSI/ositcl/linux-x86_64-gcc/Release/libositcl.so.6.0.2768' because:
>>            `OSI/osidll/linux-x86_64-gcc/Release/libosi.so.9.0.2768' is no
>> longer a dependency
>>            `OSI/osidll/linux-x86_64-gcc/Release/libosi.so.9.0.2768' is a
>> new dependency
>> Linking OSI/ositcl/linux-x86_64-gcc/Release/libositcl.so.6.0.2768
>> scons: `packages' is up to date.
>> scons: done building targets.
>> gotti at manta ~/source/sourcecode-cd $
>> The same happens when I’m doing the same build several times in a row.
>> When I’m instead running “scons
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768” nothing
>> is rebuilt:
>> (gotti at manta 1059) scons
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768 | fgrep
>> -v Checking
>> scons: Reading SConscript files ...
>> scons: done reading SConscript files.
>> scons: Building targets ...
>> scons: Nothing to be done for
>> `OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768'.
>> scons: done building targets.
>> (gotti at manta 1060)
>> So far so bad.
>> From the explanation above I take it, that somehow the signature changes
>> with each linker run, but sconsigns says otherwise:
>> $ scons/sconsign.py .sconf_temp/linux-x86_64-gcc/signatures.dblite |
>> fgrep OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768  |
>> sort | uniq –c
>>       1
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768:
>> abc0198cce2ea39815990d15a269b25d 1433421673 6658337
>>      29
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768:
>> abc0198cce2ea39815990d15a269b25d 1433425407 6658337
>>      22
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768:
>> abc0198cce2ea39815990d15a269b25d 1433427119 6658337
>> After rebuild only 22 of the occurences are updated – and it’s only the
>> timestamp
>> $ scons/sconsign.py .sconf_temp/linux-x86_64-gcc/signatures.dblite |
>> fgrep OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768  |
>> sort | uniq -c
>>       1
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768:
>> abc0198cce2ea39815990d15a269b25d 1433421673 6658337
>>      29
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768:
>> abc0198cce2ea39815990d15a269b25d 1433425407 6658337
>>      22
>> OptiSearch/src/shlib/linux-x86_64-gcc/Release/libosr.so.10.0.2768:
>> abc0198cce2ea39815990d15a269b25d 1433427485 6658337
>> That’s the point where I need some help.
>> Why is it that the same derived library is contained in signatures.dblite
>> multiple time with differing timestamps?
>> Why is it that only some of the occurences are updated?
>> Why is it that the packages target (which is an alias for debian packages
>> of all stuff built) is not rebuilt although intermediate files are?
>> I already tried hard to reduce the size of the built to produce a simpler
>> example, but to no avail – the problem doesn’t happen with smaller builds
>> L
>> I’m quite capable in debugging python code, but I could really use some
>> help with tips or hints where to look …
>>
>> Cheers,
>> Gottfried Ganßauge
>>     Entwickler
>> Content Engineering & Development
>>
>>   ------------------------------------------------------------------
>> *Haufe-Lexware GmbH & Co. KG*
>> *Ein Unternehmen der Haufe Gruppe*
>> Munzinger Str. 9, 79111 Freiburg
>> Tel. +49 761 898-0
>> E-Mail: Gottfried.Ganssauge at haufe-lexware.com
>> Internet: *http://www.haufe-lexware.com* <http://www.haufe-lexware.com>
>> ------------------------------------------------------------------
>> Kommanditgesellschaft, Sitz und Registergericht Freiburg, HRA 4408
>> Komplementäre: Haufe-Lexware Verwaltungs GmbH,
>> Sitz und Registergericht Freiburg, HRB 5557; Martin Laqua
>> Beiratsvorsitzende: Andrea Haufe
>> Geschäftsführung: Isabel Blank, Markus Dränert, Jörg Frey,
>> Birte Hackenjos, Randolf Jessl, Markus Reithwiesner,
>> Joachim Rotzinger, Dr. Carsten Thies
>> ------------------------------------------------------------------
>>
>>
>>
>>
>> _______________________________________________
>> Scons-users mailing list
>> Scons-users at scons.org
>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20150604/faaa7429/attachment-0001.html>


More information about the Scons-users mailing list