Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 39804 - qcad-2.0.1.0 emerge fails, problems writing to qt directory
Summary: qcad-2.0.1.0 emerge fails, problems writing to qt directory
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-01-29 14:58 UTC by John Altstadt
Modified: 2004-02-11 08:56 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
qcad-2.0.2.0.ebuild (qcad-2.0.2.0.ebuild,1.54 KB, text/plain)
2004-02-09 08:56 UTC, Carsten Lohrke (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description John Altstadt 2004-01-29 14:58:09 UTC
Emerge qcad starts out okay, but then it starts to generate multiple error messages when it tries writing to the qt directory. Eventually it fails without writing any files into the normal PATH or LIBPATH locations.


Reproducible: Always
Steps to Reproduce:
1.emerge -v qcad

Actual Results:  
sabre local # emerge -v qcad
Calculating dependencies ...done!
>>> emerge (1 of 1) app-sci/qcad-2.0.1.0 to /
>>> md5 src_uri ;-) qcad-2.0.1.0-1.src.tar.gz
>>> Unpacking source...
>>> Unpacking qcad-2.0.1.0-1.src.tar.gz to /var/tmp/portage/qcad-2.0.1.0/work
 * Applying qcad-2.0.1.0-1.src-gentoo.patch...                                 
                                                                               
                                           [ ok ]
>>> Source unpacked.
Building fparser, dxflib, qcadlib, qcadcmd, qcadactions, qcadguiqt, qcad..

...

make ./lib/libqcadguiqt.a
make[1]: Entering directory
`/var/tmp/portage/qcad-2.0.1.0/work/qcad-2.0.1.0-1.src/qcadguiqt'
cd src && make CXXFLAGS="-O3 -march=athlon-xp -funroll-loops -pipe -Wall
-DQT_NO_DEBUG"
make[2]: Entering directory
`/var/tmp/portage/qcad-2.0.1.0/work/qcad-2.0.1.0-1.src/qcadguiqt/src'
/usr/qt/3/bin/uic ui/qg_libraryinsertoptions.ui -o ui/qg_libraryinsertoptions.h
g++ -c -O3 -march=athlon-xp -funroll-loops -pipe -Wall -DQT_NO_DEBUG
-I/usr/qt/3/mkspecs/linux-g++ -I. -I../include -I../../qcadlib/include
-I../../qcadcmd/include -I../../qcadactions/include -I../../dxflib/include
-I../../fparser/include -I/usr/qt/3/include -Imoc/ -o obj/qg_actionfactory.o
qg_actionfactory.cpp

...

g++ -c -O3 -march=athlon-xp -funroll-loops -pipe -Wall -DQT_NO_DEBUG
-I/usr/qt/3/mkspecs/linux-g++ -I. -I../include -I../../qcadlib/include
-I../../qcadcmd/include -I../../qcadactions/include -I../../dxflib/include
-I../../fparser/include -I/usr/qt/3/include -Imoc/ -o obj/qg_widthbox.o
qg_widthbox.cpp
/usr/qt/3/bin/uic ui/qg_commandwidget.ui -i qg_commandwidget.h -o
ui/qg_commandwidget.cpp
ACCESS DENIED  mkdir:     /usr/qt/3/etc/settings
QSettings::sync: failed to open '/root/.qt/qt_plugins_3.2rc.tmp' for writing
ACCESS DENIED  mkdir:     /usr/qt/3/etc/settings
QSettings::sync: failed to open '/root/.qt/qt_plugins_3.2rc.tmp' for writing

...


This error repeats multiple times each time uic is run. Eventually the build
terminates and this is printed to the terminal several hundred times:

mkdir:     /usr/qt/3/etc/settings


Expected Results:  
The qcad application should have built and installed correctly.


emerge qcad worked okay one or two months ago, but I removed the app because it
didn't have the capabilities I was hoping for at that time.

uic works properly when running on files earlier in the build:

make[1]: Entering directory
`/var/tmp/portage/qcad-2.0.1.0/work/qcad-2.0.1.0-1.src/qcadguiqt/src'
/usr/qt/3/bin/uic ui/qg_cadtoolbararcs.ui -o ui/qg_cadtoolbararcs.h
/usr/qt/3/bin/uic ui/qg_cadtoolbarcircles.ui -o ui/qg_cadtoolbarcircles.h


The /usr/qt/3/etc/settings directory does not exist, but there are no unusual
file permissions in the first part of the tree. Each part of /usr/qt/3 has
"drwxr-xr-x root root" permissions.

If I create the /usr/qt/3/etc/settings directory by hand and then emerge qcad,
the repeated error messages change to:

g++ -c -O3 -march=athlon-xp -funroll-loops -pipe -Wall -DQT_NO_DEBUG
-I/usr/qt/3/mkspecs/linux-g++ -I. -I../include -I../../qcadlib/include
-I../../qcadcmd/include -I../../qcadactions/include -I../../dxflib/include
-I../../fparser/include -I/usr/qt/3/include -Imoc/ -o obj/qg_widthbox.o
qg_widthbox.cpp
/usr/qt/3/bin/uic ui/qg_commandwidget.ui -i qg_commandwidget.h -o
ui/qg_commandwidget.cpp
ACCESS DENIED  open_wr:   /usr/qt/3/etc/settings/.qt_plugins_3.2rc.lock
ACCESS DENIED  open_wr:   /usr/qt/3/etc/settings/qt_plugins_3.2rc.tmp
QSettings::sync: failed to open '/usr/qt/3/etc/settings/qt_plugins_3.2rc.tmp'
for writing
ACCESS DENIED  open_wr:   /usr/qt/3/etc/settings/.qt_plugins_3.2rc.lock
ACCESS DENIED  open_wr:   /usr/qt/3/etc/settings/qt_plugins_3.2rc.tmp
QSettings::sync: failed to open '/usr/qt/3/etc/settings/qt_plugins_3.2rc.tmp'
for writing


Checking the directory /usr/qt/3/etc/settings during the emerge shows that
nothing is being written to that location while uic is running. In this case
when the build terminates, this is printed to the terminal several hundred times:

open_wr:   /usr/qt/3/etc/settings/.qt_plugins_3.2rc.lock
open_wr:   /usr/qt/3/etc/settings/qt_plugins_3.2rc.tmp


I downloaded the qcad tarball, unpacked it into my home directory, and then
built it using the qcad supplied script. This built okay as myself (i.e. not
root) in my home directory, but of course it didn't install anything. The
executable does run from its build directory. The compiler gets different CFLAGS
and include directories in this case.

emerge example:
g++ -c -O3 -march=athlon-xp -funroll-loops -pipe -Wall -DQT_NO_DEBUG
-I/usr/qt/3/mkspecs/linux-g++ -I. -I../include -I../../qcadlib/include
-I../../qcadcmd/include -I../../qcadactions/include -I../../dxflib/include
-I../../fparser/include -I/usr/qt/3/include -Imoc/ -o obj/qg_widthbox.o
qg_widthbox.cpp

hand built example:
g++ -c -pipe -Wall -W -O2  -DQT_NO_DEBUG -I/usr/qt/3/mkspecs/linux-g++ -I.
-I../include -I../../qcadlib/include -I../../qcadcmd/include
-I../../qcadactions/include -I../../dxflib/include -I../../fparser/include
-I/usr/qt/3/include -Imoc/ -o obj/qg_widthbox.o qg_widthbox.cpp


sabre local # emerge info
Portage 2.0.49-r20 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r9, 2.4.20-gentoo-r9)
=================================================================
System uname: 2.4.20-gentoo-r9 i686 AMD Athlon(tm) XP 1700+
Gentoo Base System version 1.4.3.10
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=athlon-xp -funroll-loops -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.1/share/config /usr/kde/3/share/config /usr/share/config
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-O3 -march=athlon-xp -funroll-loops -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://128.213.5.34/gentoo/ http://cudlug.cudenver.edu/gentoo/
http://gentoo.noved.org/ http://mirror.tucdemonic.org/gentoo/
http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow X alsa apache2 apm arts avi berkdb bonobo cdr cjk crypt cups curl dga
directfb doc dvd emacs encode esd ethereal fastcgi fbcon foomaticdb gb gd gdbm
gif gnome gpm gtk gtk2 gtkhtml guile imap imlib innodb java jpeg kde libg++
libwww mad maildir mikmod mmx motif mozilla mpeg mysql ncurses nls odbc ofx
oggvorbis opengl oss pam pda pdflib perl png python qt quicktime readline samba
sasl sdl slang slp spell sse ssl svga tcltk tcpd tetex tiff truetype unicode usb
wmf x86 xml xml2 xmms xv zeo zlib"
Comment 1 Carsten Lohrke (RETIRED) gentoo-dev 2004-02-09 08:56:46 UTC
Created attachment 25265 [details]
qcad-2.0.2.0.ebuild

Would you try this ebuild, please?
Comment 2 John Altstadt 2004-02-09 14:38:16 UTC
Yes, this ebuild works.

The manual does not come up when Help -> Manual is selected. Nothing shows up in the console when Manual is selected. Running under strace doesn't show that qcad is even attempting to open a manual. I can't find a manual installed anywhere on the system, but the tarball does contain one. It looks like the Makefile and src/qcad.pro don't refer to the manual though.

Would it be worthwhile to include the part library in the ebuild?
Comment 3 Patrick Kursawe (RETIRED) gentoo-dev 2004-02-09 23:46:04 UTC
Please try if 2.0.1.0 (Version in the Header: 1.5) works again - there were some "fixes" to the ebuild which seemed to break the build.
Comment 4 John Altstadt 2004-02-10 07:37:30 UTC
The ebuild completes the compile and installation, but I got several hundred error/warning messages:

QSettings::sync: failed to open '/root/.qt/qt_plugins_3.2rc.tmp' for writing

There may have been other error/warning messages that scrolled off the top of my xterm (only 5000 lines of history).

The resulting application runs and can load up example DXF files.
Comment 5 Patrick Kursawe (RETIRED) gentoo-dev 2004-02-11 05:05:01 UTC
Using the hint from the ebuild attachment I added a qcad-2.0.2.0 ebuild to CVS. It installs the html documentation, but the manual browser seems to be dysfunctional (the source doesn't look like it can work at all) - just use your normal web browser. I think the part library should better be put in a seperate ebuild since it's not that small, may have different update cycles and is not necessary for running the program.
Comment 6 John Altstadt 2004-02-11 08:56:24 UTC
The new build looks good. No strange error or warning messages.

The application looks okay, ignoring the previously mentioned problem with the manual. It's nice having the manual installed.

Thanks.