Graphviz Issue Tracker
Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001434graphvizBuild/Installpublic2008-10-10 01:572011-04-28 04:03
ReporterRyan Schmidt9 
Assigned Togviz 
PlatformOSx86-OSX-10.4.11OS Version
Summary0001434: Parallel build causes error "librbtree_C.a: Resource temporarily unavailable"

Building in parallel using "make -j 2" causes an error while making inkpot:

Making all in inkpot
/mp/bin/tclsh8.5 inkpot_lib_tk.tcl data/xcolors.c
/mp/bin/tclsh8.5 inkpot_lib_svg.tcl data/types.html
/mp/bin/tclsh8.5 inkpot_lib_x11.tcl data/rgb.txt
/mp/bin/tclsh8.5 inkpot_lib_brewer.tcl data/brewer_colors
/bin/sh ../../libtool --tag=CC --mode=compile /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../.. -I/mp/include -I/mp/include -O2 -fno-common -Wall -DNDEBUG -MT inkpot_xlate.lo -MD -MP -MF .deps/inkpot_xlate.Tpo -c -o inkpot_xlate.lo inkpot_xlate.c

"oranges j" is not unique and rgb doesn't match: 217 72 1 != 217 71 1
In record: ,,,,6,j,217,72,1,
Retaining first value found, discarding second.

mkdir .libs
 /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../.. -I/mp/include -I/mp/include -O2 -fno-common -Wall -DNDEBUG -MT inkpot_xlate.lo -MD -MP -MF .deps/inkpot_xlate.Tpo -c inkpot_xlate.c -fno-common -DPIC -o .libs/inkpot_xlate.o
/usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../.. -I/mp/include -I/mp/include -O2 -fno-common -Wall -DNDEBUG -MT inkpot.o -MD -MP -MF .deps/inkpot.Tpo -c -o inkpot.o inkpot.c
mv -f .deps/inkpot_xlate.Tpo .deps/inkpot_xlate.Plo
/mp/bin/tclsh8.5 inkpot_lib.tcl \
                ./inkpot_lib_tk.dat \
                ./inkpot_lib_svg.dat \
                ./inkpot_lib_x11.dat \
mv -f .deps/inkpot.Tpo .deps/inkpot.Po
/bin/sh ../../libtool --tag=CC --mode=compile /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../.. -I/mp/include -I/mp/include -O2 -fno-common -Wall -DNDEBUG -MT inkpot_scheme.lo -MD -MP -MF .deps/inkpot_scheme.Tpo -c -o inkpot_scheme.lo inkpot_scheme.c
/bin/sh ../../libtool --tag=CC --mode=compile /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../.. -I/mp/include -I/mp/include -O2 -fno-common -Wall -DNDEBUG -MT inkpot_value.lo -MD -MP -MF .deps/inkpot_value.Tpo -c -o inkpot_value.lo inkpot_value.c
 /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../.. -I/mp/include -I/mp/include -O2 -fno-common -Wall -DNDEBUG -MT inkpot_scheme.lo -MD -MP -MF .deps/inkpot_scheme.Tpo -c inkpot_scheme.c -fno-common -DPIC -o .libs/inkpot_scheme.o
 /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../.. -I/mp/include -I/mp/include -O2 -fno-common -Wall -DNDEBUG -MT inkpot_value.lo -MD -MP -MF .deps/inkpot_value.Tpo -c inkpot_value.c -fno-common -DPIC -o .libs/inkpot_value.o
mv -f .deps/inkpot_value.Tpo .deps/inkpot_value.Plo
mv -f .deps/inkpot_scheme.Tpo .deps/inkpot_scheme.Plo
/bin/sh ../../libtool --tag=CC --mode=link /usr/bin/gcc-4.0 -O2 -fno-common -Wall -DNDEBUG -version-info 4:0:0 -no-undefined -L/mp/lib -L/mp/lib -o -rpath /mp/lib inkpot_scheme.lo inkpot_value.lo inkpot_xlate.lo ../../lib/rbtree/
/bin/sh ../../libtool --tag=CC --mode=link /usr/bin/gcc-4.0 -O2 -fno-common -Wall -DNDEBUG -L/mp/lib -L/mp/lib -o inkpot_scheme.lo inkpot_value.lo inkpot_xlate.lo ../../lib/rbtree/
rm -fr .libs/libinkpot_C.lax
mkdir .libs/libinkpot_C.lax
rm -fr .libs/libinkpot.lax
mkdir .libs/libinkpot.lax
rm -fr .libs/libinkpot_C.lax/librbtree_C.a
rm -fr .libs/libinkpot.lax/librbtree_C.a
mkdir .libs/libinkpot_C.lax/librbtree_C.a
mkdir .libs/libinkpot.lax/librbtree_C.a
Extracting /mp/var/macports/build/_Users_rschmidt_macports_dports_graphics_graphviz-devel/work/graphviz-2.21.20081009.1842/lib/inkpot/../../lib/rbtree/.libs/librbtree_C.a
Extracting /mp/var/macports/build/_Users_rschmidt_macports_dports_graphics_graphviz-devel/work/graphviz-2.21.20081009.1842/lib/inkpot/../../lib/rbtree/.libs/librbtree_C.a
(cd .libs/libinkpot_C.lax/librbtree_C.a && ar x /mp/var/macports/build/_Users_rschmidt_macports_dports_graphics_graphviz-devel/work/graphviz-2.21.20081009.1842/lib/inkpot/../../lib/rbtree/.libs/librbtree_C.a)
(cd .libs/libinkpot.lax/librbtree_C.a && ar x /mp/var/macports/build/_Users_rschmidt_macports_dports_graphics_graphviz-devel/work/graphviz-2.21.20081009.1842/lib/inkpot/../../lib/rbtree/.libs/librbtree_C.a)
ar: /mp/var/macports/build/_Users_rschmidt_macports_dports_graphics_graphviz-devel/work/graphviz-2.21.20081009.1842/lib/inkpot/../../lib/rbtree/.libs/librbtree_C.a: Resource temporarily unavailable
make[3]: *** [] Error 1
make[3]: *** Waiting for unfinished jobs....


At this point you can repeat the "make -j 2" command and it completes the build.
Additional Information

> "oranges j" is not unique and rgb doesn't match: 217 72 1 != 217 71 1
> In record: ,,,,6,j,217,72,1,
> Retaining first value found, discarding second.

This is a bug in the brewer color data, as far as I can tell. Anyway, its not related to the problem with "make -j2"

I think what is happening is that the inkpot make is running ahead of the rbrtee make. I've made a couple of changes to prevent this, I hope. We'll see with the next snapshot build.

This inkpot feature could have been phased in more carefully.

However, in general make -j tends to fail on a high performance machine
(e.g. 4 CPU Mac Pro).

[ellson] Its strange because I don't get these failures on other multi-core machines with make -j. Perhaps Macs are just that much faster.

There are other cross-library dependencies in the code that have the potential for the same problem. I'm not convinced that the automake DEPENDENCIES feature that I just tried actually works, unless the dependency is in a subdirectory.

I also rearranged the build order such that this specific problem should have gone away in the nightly builds but I still need a more rigorous solution...

Note that this problem only affects package builders, not users of binary packages. If "make -j" doesn't work for package builds, then the immediate solution is to not use it. It not like its important when running a build from a cron job in the middle of the night.

TagsNo tags attached.
VERSION     2.21.20081009.1842
Attached Files

- Relationships

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2011-04-28 04:03 user1 New Issue
2011-04-28 04:03 user1 Assigned To => user1

MantisBT 1.2.5[^]
Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker