[Scons-users] TeX, PDF, VariantDir + children() and "no such file or directory: '.sconsign.dblite'"

Pawel Tomulik ptomulik at meil.pw.edu.pl
Thu May 9 16:25:56 EDT 2013


Hi,

I have a simple project with three files:

SConstruct
src/SConscript
src/foo.tex

It uses VariantDir and DVI + PDF builders to compile LaTeX document. The
contents of the files are:

# SConsctruct
env = Environment(tools = ['latex','dvipdf'])
VariantDir('build', 'src', duplicate = 1)
SConscript('build/SConscript', exports = 'env')


# src/SConscript
Import('env')
dvi = env.DVI('foo.tex')
pdf = env.PDF(dvi)
print str(pdf[0].children()) # <- the pdf[0].children() causes the error


# src/foo.tex
\documentclass{article}
\title{Hello world}
\author{Pawel Tomulik}
\date{April 2013}
\begin{document}
\maketitle
Hello world!
\end{document}

When compiling the project, I get exception
OSError: [Errno 2] No such file or directory: '.sconsign.dblite':

Here is the full log from build:

ptomulik at barakus:$ scons
scons: Reading SConscript files ...
[<SCons.Node.FS.File object at 0x17104d0>]
scons: done reading SConscript files.
scons: Building targets ...
cd build && latex -interaction=nonstopmode -recorder foo.tex
This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012/Debian)
restricted \write18 enabled.
entering extended mode
(/home/ptomulik/sconsign-bug-example/build/foo.tex
LaTeX2e <2011/06/27>
Babel <v3.8m> and hyphenation patterns for english, dumylang,
nohyphenation, cr
oatian, bulgarian, ukrainian, russian, slovak, czech, danish, dutch,
finnish, f
rench, basque, ngerman, german, swissgerman, ngerman-x-2012-05-30,
german-x-201
2-05-30, monogreek, greek, ibycus, ancientgreek, hungarian, italian,
latin, mon
golian, mongolianlmc, nynorsk, bokmal, indonesian, esperanto, coptic,
welsh, ir
ish, interlingua, serbian, serbianc, slovenian, friulan, romansh,
estonian, rom
anian, armenian, uppersorbian, turkish, afrikaans, icelandic, kurmanji,
polish,
portuguese, galician, catalan, spanish, swedish, loaded.
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo))
(/home/ptomulik/sconsign-bug-example/build/foo.aux) [1]
(/home/ptomulik/sconsign-bug-example/build/foo.aux) )
Output written on foo.dvi (1 page, 416 bytes).
Transcript written on foo.log.
cd build && dvipdf foo.dvi foo.pdf
scons: done building targets.
OSError: [Errno 2] No such file or directory: '.sconsign.dblite':
File "/usr/lib/scons/SCons/Script/Main.py", line 1359:
_exec_main(parser, values)
File "/usr/lib/scons/SCons/Script/Main.py", line 1323:
_main(parser)
File "/usr/lib/scons/SCons/Script/Main.py", line 1072:
nodes = _build_targets(fs, options, targets, target_top)
File "/usr/lib/scons/SCons/Script/Main.py", line 1281:
jobs.run(postfunc = jobs_postfunc)
File "/usr/lib/scons/SCons/Job.py", line 113:
postfunc()
File "/usr/lib/scons/SCons/Script/Main.py", line 1278:
SCons.SConsign.write()
File "/usr/lib/scons/SCons/SConsign.py", line 109:
syncmethod()
File "/usr/lib/scons/SCons/dblite.py", line 127:
self._os_unlink(self._file_name)
Exception OSError: OSError(2, 'No such file or directory') in <bound
method dblite.__del__ of <SCons.dblite.dblite object at 0x1710d50>> ignored

After compilation I have .sconsign.tmp file in my top source directory,
but there is no .sconsign.dblite.

My setup is: debian jessie/sid, python2.7, scons 2.3.

SCons by Steven Knight et al.:
script: v2.3.0, 2013/03/03 09:48:35, by garyo on reepicheep
engine: v2.3.0, 2013/03/03 09:48:35, by garyo on reepicheep
engine path: ['/usr/lib/scons/SCons']


Is this a bug or its me doing something wrong? Any workaround?

I attach a minimal example.

Regards!
--
Paweł Tomulik
-------------- next part --------------
A non-text attachment was scrubbed...
Name: scons-bug-2907.tar.gz
Type: application/gzip
Size: 568 bytes
Desc: not available
Url : <http://four.pairlist.net/pipermail/scons-users/attachments/20130509/a2ea1198/attachment-0001.bin>


More information about the Scons-users mailing list