Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Info-ingres] Compiling for Ubuntu Server

104 views
Skip to first unread message

linnuxxy

unread,
Sep 16, 2006, 4:36:07 AM9/16/06
to info-...@cariboulake.com
I tried to build ingres2006 on Ubuntu Server 6.06.... I could get it
almost working....

I got one main problem

..failed Link
/home/ingres/ingres2006-9.0.4-103-gpl-src/build/utility/unimapcompile
..

This led to have

..failed updating 4 target(s)...
..skipped 52 target(s)...
..updated 9506 target(s)...

Can Anyone tell me how to get over this ..... I think Ubuntu is very
important distro that we should supply a pre-built packages of ingres.
We even could supply an apt repository....

_______________________________________________
Info-ingres mailing list
Info-...@cariboulake.com
http://mailman.cariboulake.com/mailman/listinfo.py/info-ingres

linnuxxy

unread,
Sep 19, 2006, 5:02:58 PM9/19/06
to info-...@cariboulake.com
I think it is good idea to support Ubuntu and give a pre-built packages
for it. Ubuntu is very poeplar and growning distro.

At least you should provide a step-by-step document for getting Ingres
working on Ubuntu.

Maybe we can have something open source enterprise with
Ubuntu/Zope+Plone/Ingres or Ubuntu/JBoss/Ingres... It will be a good
marketing Logo... to have Enterprise/Distributed/Transactional System
with open source.

Build an apt repository, a real community site... and some better
documentation and people will like it for sure..

linnuxxy wrote:
> I tried to build ingres2006 on Ubuntu Server 6.06.... I could get it
> almost working....
>
> I got one main problem
>

> ...failed Link
> /home/ingres/ingres2006-9.0.4-103-gpl-src/build/utility/unimapcompile
> ...
>
> This led to have
>
> ...failed updating 4 target(s)...
> ...skipped 52 target(s)...
> ...updated 9506 target(s)...

Michael Touloumtzis

unread,
Sep 20, 2006, 8:54:43 PM9/20/06
to info-...@cariboulake.com
linnuxxy wrote:
> I tried to build ingres2006 on Ubuntu Server 6.06.... I could get it
> almost working....
>
> I got one main problem
>
> ...failed Link
> /home/ingres/ingres2006-9.0.4-103-gpl-src/build/utility/unimapcompile
> ...
>

This is likely because "cc" is being used to build unimapcompile, and
this probably points to cc, which is by default gcc 4.0 on Ubuntu
Dapper Drake, and it doesn't like the writable-strings directive. I'm
guessing you are compiling with gcc 3.4 or would not have gotten this
far.

To debug this you could "jam -d9" for example, and find that C++ is
being expanded to cc. So in Jamdefs.int_lnx add this line and you
should be able to complete the build:
C++ = "g++-3.4"

Another way around this would be to write the failing jam build
commands to a file, for example
jam -o buildit
them edit buildit to change ^cc to ^gcc-3.4
and then
sh buildit
This kind of thing can be handy for working around jam issues and also
for special debug building where you want non-standard compile options,
or where the ingres OPTIM directives are not creating the compile you
want e.g. for a gdb debuggable build.

In Ingres development we try to keep the product portable across Linux
distros. I've compiled on Slackware, Debian, SuSE, RedHat, etc. I think
others have tried Gentoo. As far as I know no one has tried Puppy
Linux, yet. ;)

The problem is usually not the distro itself but the rapid change and
development of the tool stack. The gcc 4.0 compiler broke many
compiles, not just Ingres.

The Ingres 2006 code compiles clean with tool stacks like the ones in
distros similar in age to SuSE 9.3. And the latest Ingres build tree,
still in internal development, works fine with the very latest tools.
The posted source tarball for Ingres 2006 is just a bit behind the
times. When it is refreshed these gcc compile problems with go away.

Here is a quick reference for compiling
ingres2006-9.0.4-103-gpl-src.tgz on Ubuntu 6.06. Similar things would
need to be done for other recent releases from Novell/SUSE, RedHat/FC,
etc. where the default compiler has problems with the Xerces and Ingres
source in the tar ball.

- intall gcc-3.4 (or similar) and related packages suggested by the
package manager

- untar to a location of your choice, for example /home/ingres/gpl;
this is "ING_ROOT" and will contain the Kerberos headers (Kerberos5),
pax, Xerces (xerces-c-src_2_5_0), and the Ingres source (src)

- Kerberos5 - nothing to do, just headers

- pax - sh build.sh (builds file with gcc 4.0 or you can change to use
gcc 3.4, as you wish)

- xerces-c-src_2_5_0 - needs a source change because of the same sorts
of gcc issues that give Ingres problems:

xerces-c-src_2_5_0/src/xercesc/util$ diff RefArrayOf.hpp.ORIG
RefArrayOf.hpp
103a104
> #include <xercesc/framework/MemoryManager.hpp>

then build with gcc-3.4 and g++-3.4 as directed in the Readme.html, for
example:
cd xerces-c-src_2_5_0
export XERCESCROOT=`pwd`
cd $XERCESCROOT/src/xercesc
autoconf
runConfigure -plinux -cgcc-3.4 -xg++-3.4 -minmem -nsocket -tnative
-rpthread
make

- src - the Ingres source tree needs changes (because of compiler
issues) to the jam build definitions:

src/tools/port/jam$ diff Jamdefs.int_lnx.ORIG Jamdefs.int_lnx
47,48c47,48
< CC default = "cc" ;
< CPP default = "/lib/cpp" ;
---
> CC = "gcc-3.4" ;
> CPP = "/lib/cpp-3.4" ;
81c81,82
< CXX = "g++" ;
---
> CXX = "g++-3.4" ;
> C++ = "g++-3.4" ;

- when pax and Xerces are built and the above Jamdefs change is done,
just set up the environment and use jam to build

cd to the place you untarred, for example cd /home/ingres/gpl, and

export ING_ROOT=`pwd`
export KRB5HDR=$ING_ROOT/Kerberos5/hdr
export PAXLOC=$ING_ROOT/pax
export XERCESCROOT=$ING_ROOT/xerces-c-src_2_5_0
export XERCESLOC=$XERCESCROOT/lib
source $ING_ROOT/src/tools/port/jam/bldenv

cd jam
jam
cd $ING_SRC
mkjams
jam >& jam.out &

When you get a clean build you still need to create an install tar
ball, which is documented in the source tree. No need to make an RPM
for Ubuntu. There is no .deb package build. But the traditional Ingres
installer for Unix works just fine and is documented in the Getting
Started manuals.

linnuxxy

unread,
Sep 21, 2006, 2:55:02 AM9/21/06
to info-...@cariboulake.com
Thank you Michael ....
I can't wait to go home and try it out... I will tell you how it went
when I finish...

BTW.. I used gcc-3.3.

Michael Touloumtzis

unread,
Sep 21, 2006, 1:46:54 PM9/21/06
to info-...@cariboulake.com
A bit off topic, but for the information of all who are reading this
list or who come here in search of solutions re building the GPL
version of Ingres 2006 ...

Another issue that can come up (at least with some RedHat systems) is
link failures on the _IO symbol.

If you encounter this, make the following source change

$ diff cl/clf/handy_unix_win/cldio.c.ORIG cl/clf/handy_unix_win/cldio.c
47a48
> # include <sys/ioctl.h>

then remove all files from $ING_BUILD/lib and rebuild.

linnuxxy

unread,
Sep 21, 2006, 2:45:16 PM9/21/06
to info-...@cariboulake.com
Thanks Michael ,,, It is working now....

I will try to write a HOWTO and post it somewhere!!!!

v.be...@gmail.com

unread,
Jun 3, 2013, 8:48:40 AM6/3/13
to
HELLO EVERYONE!
I am trying to install ingres in a ubuntu server and following this tutorial: https://help.ubuntu.com/community/Servers/Ingres#References.
I have a problem when i run the command: runConfigure -plinux -cgcc-3.4 -xg++-3.4 -minmem -nsocket -tnative -rpthread
It shows that runConfigure command not found. Btw i am using gcc-4.1 and g++4.1 so in the upper command instead of 3.4 i put 4.1..

Any suggestions ? Thanks in advance
0 new messages