Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Mar 2008 12:18:16 -0500
From:      Matt <datahead4@gmail.com>
To:        "Steven Kreuzer" <skreuzer@exit2shell.com>
Cc:        ports@freebsd.org, skv@freebsd.org
Subject:   Re: FreeBSD Port: KeePassX-0.2.2_2
Message-ID:  <cd6b4a5b0803181018xdfcbcbcjb5ed0f2eecd4eef7@mail.gmail.com>
In-Reply-To: <20080318162647.GA35006@scruffy.exit2shell.com>
References:  <cd6b4a5b0803180853h34ef8d08g9c008ba135076339@mail.gmail.com> <20080318162647.GA35006@scruffy.exit2shell.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Mar 18, 2008 at 11:26 AM, Steven Kreuzer
<skreuzer@exit2shell.com> wrote:
>
> On Tue, Mar 18, 2008 at 10:53:24AM -0500, Matt wrote:
>  > Hello.
>  >
>  > It looks like the KeePassX folks have recently updated to the 0.3.x
>  > branch.  I've looked at trying to build a local port from the updated
>  > version but it fails with multiple build errors (I'm running
>  > 7.0-RELEASE and all qt4 ports are at version 4.3.4).  Can someone take
>  > a look and see if there are obvious changes needed to make it compile?
>  >
>  > Thanks,
>  > Matt
>  > _______________________________________________
>  > freebsd-ports@freebsd.org mailing list
>  > http://lists.freebsd.org/mailman/listinfo/freebsd-ports
>  > To unsubscribe, send any mail to "freebsd-ports-unsubscribe@freebsd.org"
>
>  Cut and paste the errors you are getting. It might be something fairly trivial,
>  or it might be related to a specific setting on your machine.
>  --
>  Steven Kreuzer
>  http://www.exit2shell.com/~skreuzer
>

The first build error is:

# make
===>  Building for KeePassX-0.3.1
cd src/ && make -f Makefile all
c++ -c -pipe -O2 -fno-strict-aliasing -pipe -w -DAUTOTYPE
-DGLOBAL_AUTOTYPE -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB
-DQT_CORE_LIB -I/usr/local/share/qt4/mkspecs/freebsd-g++ -I.
-I/usr/local/include/QtCore -I/usr/local/include/QtCore
-I/usr/local/include/QtGui -I/usr/local/include/QtGui
-I/usr/local/include/QtXml -I/usr/local/include/QtXml
-I/usr/local/include -I/usr/local/include -I. -Ilib -Icrypto
-Iplugins/interfaces -Iexport -Iimport -Idialogs -I../build/ui
-I../build/moc -I/usr/local/include -o ../build/HelperX11.o
lib/HelperX11.cpp
In file included from lib/HelperX11.h:23,
                 from lib/HelperX11.cpp:21:
lib/AutoType.h:27: error: 'quint32' does not name a type
lib/AutoType.h:37: error: 'IEntryHandle' has not been declared
lib/AutoType.h:37: error: 'QString' has not been declared
In file included from /usr/local/include/QtGui/qx11info_x11.h:47,
                 from /usr/local/include/QtGui/QX11Info:1,
                 from lib/HelperX11.cpp:22:
/usr/local/include/QtCore/qnamespace.h:1035: error: expected
identifier before numeric constant
/usr/local/include/QtCore/qnamespace.h:1035: error: expected
unqualified-id before numeric constant
*** Error code 1
Stop in /usr/ports/security/keepassx/work/KeePassX-0.3.1/src.
*** Error code 1
Stop in /usr/ports/security/keepassx/work/KeePassX-0.3.1.
*** Error code 1
Stop in /usr/ports/security/keepassx.

This one is apparently being caused by conflicting definitions of
"CursorShape" in the files /usr/local/include/X11/X.h and
/usr/local/include/QtCore/qnamespace.h - with the definition in
qnamespace.h being the one that is required.  Hacking around this with
a sloppy "#undef CursorShape"
"work/KeePassX-0.3.1/src/lib/HelperX11.h" still yields the error:

# make
===>  Building for KeePassX-0.3.1
cd src/ && make -f Makefile all
c++ -c -pipe -O2 -fno-strict-aliasing -pipe -w -DAUTOTYPE
-DGLOBAL_AUTOTYPE -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB
-DQT_CORE_LIB -I/usr/local/share/qt4/mkspecs/freebsd-g++ -I.
-I/usr/local/include/QtCore -I/usr/local/include/QtCore
-I/usr/local/include/QtGui -I/usr/local/include/QtGui
-I/usr/local/include/QtXml -I/usr/local/include/QtXml
-I/usr/local/include -I/usr/local/include -I. -Ilib -Icrypto
-Iplugins/interfaces -Iexport -Iimport -Idialogs -I../build/ui
-I../build/moc -I/usr/local/include -o ../build/HelperX11.o
lib/HelperX11.cpp
In file included from lib/HelperX11.h:23,
                 from lib/HelperX11.cpp:21:
lib/AutoType.h:27: error: 'quint32' does not name a type
lib/AutoType.h:37: error: 'IEntryHandle' has not been declared
lib/AutoType.h:37: error: 'QString' has not been declared
*** Error code 1
Stop in /usr/ports/security/keepassx/work/KeePassX-0.3.1/src.
*** Error code 1
Stop in /usr/ports/security/keepassx/work/KeePassX-0.3.1.
*** Error code 1
Stop in /usr/ports/security/keepassx.

Adding an include for "qglobal.h" in
"work/KeePassX-0.3.1/src/lib/AutoType.h" handles two more of the
errors but I am still left with:

# make
===>  Building for KeePassX-0.3.1
cd src/ && make -f Makefile all
c++ -c -pipe -O2 -fno-strict-aliasing -pipe -w -DAUTOTYPE
-DGLOBAL_AUTOTYPE -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB
-DQT_CORE_LIB -I/usr/local/share/qt4/mkspecs/freebsd-g++ -I.
-I/usr/local/include/QtCore -I/usr/local/include/QtCore
-I/usr/local/include/QtGui -I/usr/local/include/QtGui
-I/usr/local/include/QtXml -I/usr/local/include/QtXml
-I/usr/local/include -I/usr/local/include -I. -Ilib -Icrypto
-Iplugins/interfaces -Iexport -Iimport -Idialogs -I../build/ui
-I../build/moc -I/usr/local/include -o ../build/HelperX11.o
lib/HelperX11.cpp
In file included from lib/HelperX11.h:23,
                 from lib/HelperX11.cpp:21:
lib/AutoType.h:39: error: 'IEntryHandle' has not been declared
*** Error code 1
Stop in /usr/ports/security/keepassx/work/KeePassX-0.3.1/src.
*** Error code 1
Stop in /usr/ports/security/keepassx/work/KeePassX-0.3.1.
*** Error code 1
Stop in /usr/ports/security/keepassx.

At which point I remind myself that I am not a programmer and
shouldn't be messing with things that I don't understand.  :)  And, it
seems strange that I am getting Qt-related errors and conflicts that
may have an underlying cause that I am not aware of.

Changes made to the port Makefile are:

# diff -u3 Makefile.old Makefile
--- Makefile.old        2008-03-17 15:10:48.000000000 -0500
+++ Makefile    2008-03-18 12:01:39.000000000 -0500
@@ -6,8 +6,8 @@
 #

 PORTNAME=      KeePassX
-PORTVERSION=   0.2.2
-PORTREVISION=  2
+PORTVERSION=   0.3.1
+PORTREVISION=
 CATEGORIES=    security
 MASTER_SITES=  ${MASTER_SITE_SOURCEFORGE}
 MASTER_SITE_SUBDIR=    ${PORTNAME:L}
@@ -15,7 +15,7 @@
 MAINTAINER=    skv@FreeBSD.org
 COMMENT=       Cross Platform Password Manager

-WRKSRC=                ${WRKDIR}/${PORTNAME:L}-${PORTVERSION}
+WRKSRC=                ${WRKDIR}/${PORTNAME}-${PORTVERSION}

 USE_QT_VER=    4
 QT_COMPONENTS= qmake gui moc uic qt3support

Thank you for the help,
Matt



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?cd6b4a5b0803181018xdfcbcbcjb5ed0f2eecd4eef7>