Archived

This forum has been archived. Please start a new discussion on GitHub.

Arch linux cannot compile Ice

Hello, i am trying to compile the latest ice version(i just need the C++ section)
This is what i get:
user@arch:Ice-3.4.1$ pwd
/home/user/Downloads/Ice-3.4.1
user@arch:Ice-3.4.1$ 

I compile this, using:
make cpp

and i get errors:
making all in Freeze
make[3]: Entering directory `/home/user/Downloads/Ice-3.4.1/cpp/src/Freeze'
c++ -c -I.. -I../../include -DFREEZE_API_EXPORTS    -Wall -D_REENTRANT -fPIC -g  MapI.cpp
MapI.cpp:1491:2: error: #error Freeze requires DB 4.x
MapI.cpp: In member function ‘virtual size_t Freeze::MapHelperI::size() const’:
MapI.cpp:1494:24: error: no matching function for call to ‘Freeze::MapDb::stat(DB_BTREE_STAT**, int)’
/usr/include/db_cxx.h:299:14: note: candidate is: virtual int Db::stat(DbTxn*, void*, u_int32_t)
make[3]: *** [MapI.o] Error 1
make[3]: Leaving directory `/home/user/Downloads/Ice-3.4.1/cpp/src/Freeze'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/home/user/Downloads/Ice-3.4.1/cpp/src'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/home/user/Downloads/Ice-3.4.1/cpp'
make: *** [cpp] Error 1


i am using berkeley db version
root@arch:~# pacman -Si db
Repository     : core
Name           : db
Version        : 5.1.25-1
URL            : http://www.oracle.com/technology/software/products/berkeley-db/index.html
Licenses       : custom
Groups         : None
Provides       : None
Depends On     : gcc-libs  sh
Optional Deps  : None
Conflicts With : None
Replaces       : None
Download Size  : 1211.15 K
Installed Size : 11116.00 K
Packager       : Allan McRae <allan@archlinux.org>
Architecture   : i686
Build Date     : Thu 03 Feb 2011 03:06:50 PM EET
MD5 Sum        : da5e3127c2951dfd2b0d33f473c35344
Description    : The Berkeley DB embedded database system
and gcc
root@arch:~# gcc --version
gcc (GCC) 4.5.2 20110127 (prerelease)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
any suggestions?

Comments

  • bernard
    bernard Jupiter, FL
    Hello Aris,

    Welcome to our forums!

    Ice 3.4.1 was built and tested with Berkeley DB 4.8, and from your report, it looks like Oracle changed some APIs between the 4.8 and 5.1 DB releases.

    While porting the code to Berkeley DB 5.1 shouldn't be difficult, the simplest is to use Berkeley DB 4.8 for your build.

    Best regards,
    Bernard