Download Reference Manual
The Developer's Library for D
About Wiki Forums Source Search Contact

Ticket #1733 (closed defect: fixed)

Opened 2 years ago

Last modified 2 years ago

Failed to build tango trunk

Reported by: goshawk Assigned to: kris
Priority: major Milestone: 0.99.9
Component: Tango Version: trunk
Keywords: Cc: fawzi

Description (Last modified by goshawk)

Hi,

From yesterday i've an odd error in daily package building for ldc.

Here is the build log:

http://launchpadlibrarian.net/30915635/buildlog_ubuntu-karmic-i386.libtango-daily_0.99.8%2B20090828-0ubuntu0ppa1_FAILEDTOBUILD.txt.gz

The error is:

DC=ldc && cd build && ./build.sh --no-install-libs
XXX using the architecture file /build/buildd/libtango-daily-0.99.8+20090828/build/runtime/../../build/arch/linux-i686-ldc-opt.mak
object.d: Error: module object cannot read file 'object.d'
object.d: Error: module object cannot read file 'object.d'
make[3]: *** [tango.core.BitManip.dep] Error 1
make[2]: *** [build] Error 2
make[1]: *** [allVersions] Error 2
error building runtime

The build log of ldc is here: http://launchpadlibrarian.net/30915663/buildlog_ubuntu-karmic-i386.ldc-daily_0.9.1%2B20090828.dfsg-0ubuntu0ppa1_FULLYBUILT.txt.gz

Change History

08/27/09 19:00:53 changed by goshawk

  • description changed.

08/27/09 19:26:49 changed by goshawk

The problem is that object.di disappear:

goshawk@jupiter:~/automaticDlanguagePPA/libtango-daily-0.99.8+20090828/user$ ls
dsss.conf  tango

But i checked after svn co and it was there...

So it gets deleted by makefile while doing one of these steps:

cd build/runtime && make distclean
cd build/user && make distclean

DC=ldc && cd build && ./build.sh --no-install-libs

and with a bit of research....

goshawk@jupiter:~/automaticDlanguagePPA/libtango-daily-0.99.8+20090828/build/runtime$ make distclean
rm -rf /home/goshawk/automaticDlanguagePPA/libtango-daily-0.99.8+20090828/build/runtime/../../build/runtime/objs-*
rm -f /home/goshawk/automaticDlanguagePPA/libtango-daily-0.99.8+20090828/build/runtime/../../build/libs/libtango-base-*
find /home/goshawk/automaticDlanguagePPA/libtango-daily-0.99.8+20090828/build/runtime/../../user -name '*.di' | xargs rm
rm: missing operand
Try `rm --help' for more information.
make: *** [distclean] Error 123

BINGO! ;) I think this line:

find /home/goshawk/automaticDlanguagePPA/libtango-daily-0.99.8+20090828/build/runtime/../../user -name '*.di' | xargs rm

Should be changed, it deletes object.di

08/28/09 19:12:21 changed by goshawk

It's not solved in commit 4900.

find /home/goshawk/automaticDlanguagePPA/libtango-daily-0.99.8+20090829/build/runtime/../../user -name '*.di' -a -not -name object.di | xargs rm
rm: missing operand

If it's executed before building, there are no files to delete and rm receives no arguments. While building a package, the source tree is sanitized cleaning all, and then the package is built.

A check that find returns one or more paths should be done before calling rm.

08/28/09 19:23:26 changed by goshawk

Just change it with:

find $(TANGO_HOME)/user -name '*.di' -a -not -name object.di -exec rm {} \;

08/31/09 12:48:34 changed by fawzi

  • status changed from new to closed.
  • resolution set to fixed.

(In [4906]) ifxing issue when there are no files to clean, fix #1733