Bug 74691 - cannot rebuild for Oracle support
cannot rebuild for Oracle support
Status: CLOSED RAWHIDE
Product: Red Hat Linux
Classification: Retired
Component: tora (Show other bugs)
8.0
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Mihai Ibanescu
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2002-09-30 18:24 EDT by Chris Ricker
Modified: 2008-05-01 11:38 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2002-11-25 15:09:11 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Chris Ricker 2002-09-30 18:24:46 EDT
I'm trying to rebuild TOra to include Oracle support.  I changed the configure
line in the spec to remove the --without-oracle option and then did an rpmbuild
--ba tora.spec.  I get back:

[root@station2 SPECS]# rpmbuild -ba tora.spec 
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.66980
+ umask 022
+ cd /usr/src/redhat/BUILD
+ LANG=C
+ export LANG
+ cd /usr/src/redhat/BUILD
+ rm -rf tora-1.3.6.1
+ /usr/bin/gzip -dc /usr/src/redhat/SOURCES/tora-alpha-1.3.6.1.tar.gz
+ tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd tora-1.3.6.1
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chown -Rhf root .
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chgrp -Rhf root .
+ /bin/chmod -Rf a+rX,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.66980
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd tora-1.3.6.1
+ LANG=C
+ export LANG
+ unset QTDIR
+ . /etc/profile.d/qt.sh
++ '[' -z '' ']'
++ QTDIR=/usr/lib/qt3-gcc3.2
++ export QTDIR
+ export 'CFLAGS=-O2 -march=i386 -mcpu=i686'
+ CFLAGS=-O2 -march=i386 -mcpu=i686
+ export 'CXXFLAGS=-O2 -march=i386 -mcpu=i686'
+ CXXFLAGS=-O2 -march=i386 -mcpu=i686
+ ./configure --prefix=/usr --without-rpath --with-kde
--with-kde-include=/usr/include/kde --with-qt=/usr/lib/qt3-gcc3.2
--with-qt-moc=/usr/lib/qt3-gcc3.2/bin/moc --with-qt-uic=/usr/lib/qt3-gcc3.2/bin/uic
checking for perl... perl
checking for KDE include files ... /usr/include/kde
checking for KDE version ... 3.0.3
checking for KDE print support ... yes
checking for KDE libraries ... /usr/lib
checking for KDE base ... /usr
checking for Qt library linked to KDE ... libqt-mt
checking for Qt library ... /usr/lib/qt3-gcc3.2/lib
checking for moc ... /usr/lib/qt3-gcc3.2/bin/moc
checking for uic ... /usr/lib/qt3-gcc3.2/bin/uic
checking for Qt include files ... /usr/lib/qt3-gcc3.2/include
checking for Qt version ... 3.0.5
checking for library consistency ... yes
checking for static Qt library ... /usr/lib/qt2/lib/libqt-mt.a
checking for Oracle ... /opt/oracle
checking for Oracle version ... 9.2.0.1.0
checking for MySQL support ... Available through QSql only with Qt >= 3.0.0
checking for any database ... Oracle QSql 
checking for extra libraries ... none
checking for plugin support ... yes
checking /usr/bin/cc compiler ... In file included from /tmp/toraconfig.7553.cpp:6:
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h: In member function `void 
   otl_cur::error(otl_exc&)':
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h:8023: `min' undeclared (first use 
   this function)
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h:8023: (Each undeclared identifier is 
   reported only once for each function it appears in.)
no
checking /usr/bin/gcc compiler ... In file included from /tmp/toraconfig.7553.cpp:6:
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h: In member function `void 
   otl_cur::error(otl_exc&)':
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h:8023: `min' undeclared (first use 
   this function)
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h:8023: (Each undeclared identifier is 
   reported only once for each function it appears in.)
no
checking /usr/bin/g++ compiler ... In file included from /tmp/toraconfig.7553.cpp:6:
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h: In member function `void 
   otl_cur::error(otl_exc&)':
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h:8023: `min' undeclared (first use 
   this function)
/usr/src/redhat/BUILD/tora-1.3.6.1/otlv4.h:8023: (Each undeclared identifier is 
   reported only once for each function it appears in.)
no

Failed to find compatible GCC compiler. This doesn't necessary mean that
there are no c++ compiler that won't work. This test includes compiling
a Qt application using Oracle. So if anything went wrong finding these
this test will fail.

The command tried was the following ($CC is replaced with whatever C
compiler used):

$CC "-L/usr/lib" "-L/opt/oracle/lib" "-L/usr/lib/qt3-gcc3.2/lib"
"-L/usr/lib/mysql/libmysqlclient.a"  -I`pwd` "-I/usr/include/kde"
"-I/opt/oracle/rdbms/demo" "-I/opt/oracle/plsql/public"
"-I/opt/oracle/rdbms/public" "-I/opt/oracle/network/public"
"-I/usr/lib/qt3-gcc3.2/include" -lcrypt -lm -lpthread -lkdeprint -lkdecore
-lkdeui -lDCOP -lkhtml -ldl  -lqt-mt  -lclntsh -otemp /tmp/toraconfig.7553.cpp

error: Bad exit status from /var/tmp/rpm-tmp.66980 (%build)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.66980 (%build)
[root@station2 SPECS]# 

It'd be nice if this could be rebuild easily for Oracle
Comment 1 Mihai Ibanescu 2002-09-30 18:49:35 EDT
I'll try to reproduce. A lot of things may be different on your side though
(Oracle install may be incomplete and such). All I can say is that I've been
building (private) tora pacakges with Oracle for a while now and never seen the
above problem before. I may have used a different spec file though.
Comment 2 Chris Ricker 2002-09-30 18:54:57 EDT
I'm using Oracle 9iR2 (enterprise install).

I got it to build w/ the following patch:

--- otlv4.h.orig        2002-09-30 16:46:55.000000000 -0600
+++ otlv4.h     2002-09-30 16:47:20.000000000 -0600
@@ -8020,7 +8020,7 @@
        0,
        OTL_SCAST(ub4,OCI_ATTR_PARSE_ERROR_OFFSET),
        errhp)==OCI_SUCCESS) {
-    exception_struct.errorofs=min(int(errorofs),2023);
+    exception_struct.errorofs=(int(errorofs),2023);
   }
  }
 

(and then just removing the --without-oracle from the spec)
Comment 3 Mihai Ibanescu 2002-09-30 19:03:39 EDT
That is not exactly correct, min(int(errorofs),2023) may return int(errorofs) if
errorofs < 2023, while (int(errorofs), 2023) means 2023.
Comment 4 Chris Ricker 2002-09-30 19:18:34 EDT
True enough.  I also think that was fixing the wrong problem (it makes it build,
but what it's changing isn't really what's broken) -- if I remove the min, do a
configure, then add the min back and do the make, TOra compile dies with the
following:

utils.h:247: warning: `typename std::list<T, std::allocator<_CharT> >::iterator
   ' is implicitly a typename
utils.h:247: warning: implicit typename is deprecated, please see the 
   documentation for details
toresultcontent.cpp:46:37: toresultcontentfilterui.h: No such file or directory
In file included from toresultcontent.cpp:48:
tosearchreplace.h:38:31: tosearchreplaceui.h: No such file or directory
In file included from toresultcontent.cpp:48:
tosearchreplace.h: At global scope:
tosearchreplace.h:46: parse error before `,' token
tosearchreplace.h:51: destructors must be member functions
tosearchreplace.h: In function `void toSearchReplace()':
tosearchreplace.h:51: invalid use of `this' in non-member function
tosearchreplace.h: At global scope:
tosearchreplace.h:58: parse error before `public'
tosearchreplace.h:62: virtual outside class declaration
tosearchreplace.h:63: virtual outside class declaration
tosearchreplace.h:64: virtual outside class declaration
tosearchreplace.h:65: virtual outside class declaration
tosearchreplace.h:66: parse error before `}' token
In file included from toresultcontent.cpp:66:
toresultcontent.moc: In member function `virtual bool 
   toResultContentEditor::qt_invoke(int, QUObject*)':
toresultcontent.moc:356: parse error before `)' token
toresultcontent.moc:356: parse error before `)' token
In file included from toresultcontent.cpp:67:
toresultcontentfilterui.moc:11:37: toresultcontentfilterui.h: No such file or
directory
In file included from toresultcontent.cpp:67:
toresultcontentfilterui.moc: At global scope:
toresultcontentfilterui.moc:22: syntax error before `::' token
toresultcontentfilterui.moc:27: syntax error before `::' token
toresultcontentfilterui.moc:31: syntax error before `::' token
toresultcontentfilterui.moc:39: syntax error before `::' token
toresultcontentfilterui.moc:50: syntax error before `::' token
toresultcontentfilterui.moc:55: ISO C++ forbids declaration of `metaObj' with 
   no type
toresultcontentfilterui.moc:63: invalid conversion from `QMetaObject*' to `int'
toresultcontentfilterui.moc:64: syntax error before `.' token
toresultcontentfilterui.moc:68: syntax error before `::' token
toresultcontentfilterui.moc:74: syntax error before `::' token
toresultcontentfilterui.moc:79: syntax error before `::' token
toresultcontentfilterui.moc:85: syntax error before `::' token
toresultcontent.cpp:1125: invalid operands of types `void ()()' and `void ()()' 
   to binary `operator*'
toresultcontent.cpp:1126: `bool toResultContentEditor::searchNext' is not a 
   static member of `class toResultContentEditor'
toresultcontent.cpp:1126: syntax error before `{' token
toresultcontent.cpp:1128: `currentColumn' was not declared in this scope
toresultcontent.cpp:1129: parse error before `while'
toresultcontent.cpp:1133: parse error before `if'
toresultcontent.cpp:1137: `row' was not declared in this scope
toresultcontent.cpp:1137: ISO C++ forbids declaration of `editCell' with no 
   type
toresultcontent.cpp:1137: initializer list being treated as compound expression
toresultcontent.cpp:1138: parse error before `if'
toresultcontent.cpp:1142: ISO C++ forbids declaration of `SearchEnd' with no 
   type
toresultcontent.cpp:1143: ISO C++ forbids declaration of `SearchStart' with no 
   type
toresultcontent.cpp:1143: `pos' was not declared in this scope
toresultcontent.cpp:1144: parse error before `return'
toresultcontent.cpp:1146: syntax error before `++' token
toresultcontent.cpp:1149: ISO C++ forbids declaration of `col' with no type
toresultcontent.cpp:1149: redefinition of `int col'
toresultcontent.cpp:1128: `int col' previously defined here
toresultcontent.cpp:1150: parse error before `}' token
toresultcontent.cpp:1151: ISO C++ forbids declaration of `SearchEnd' with no 
   type
toresultcontent.cpp:1151: redefinition of `int SearchEnd'
toresultcontent.cpp:1142: `int SearchEnd' previously defined here
toresultcontent.cpp:1152: parse error before `}' token
toresultcontent.cpp: In member function `void toResultContent::changeFilter()':
toresultcontent.cpp:1241: `toResultContentFilterUI' undeclared (first use this 
   function)
toresultcontent.cpp:1241: (Each undeclared identifier is reported only once for 
   each function it appears in.)
toresultcontent.cpp:1241: parse error before `(' token
toresultcontent.cpp:1242: `filter' undeclared (first use this function)
make: *** [objs/toresultcontent.o] Error 1
[root@station2 tora-1.3.6.1]# 
Comment 5 Mihai Ibanescu 2002-11-25 15:09:03 EST
Can you please grab the rawhide srpm and define have_oracle 1 in the spec file?
Then give it a try.

tora-1.3.8-3

Alternatively, ftp://people.redhat.com/misa/fixes/tora-1.3.8-3.src.rpm
until the package hits rawhide.

Please note that I've split the qsql crap in a separate package, it may not be
such a great idea after all, I may change my mind about it.
Comment 6 Chris Ricker 2002-12-04 13:54:03 EST
I just tried tora-1.3.8-4.  It compiled the oracle plugin w/o any problems --
thanks!

Note You need to log in before you can comment on or make changes to this bug.