HowTo
  • Hallo @ all

    I've tried to compile the Server on several systems (SuSe9.3, TSL2.2, Ubuntu5.04) and it does not correctly work. Is there anybody with the same problem? I'm going to write an HowTo (first in german only) how to compile Cyphesis correctly on SuSe, TSL and Debian- based systems.
  • I am currently away, so it's hard for me to post at length, or respond quickly here. However, I will try and help you resolve your problems when you get back.

    Can you clarify what problems you are having, and I will attempt to identify where the README file has let you down.
  • Ok, I'm intrigued by this. I'm currently building rpms for SuSE 10.0 for a couple of Worldforge libraries, servers and clients. I haven't tried cyphesis yet, as some of the required libs are acting up, but I'll do so tonight and see if I get some problems on suse 10.0
  • I've tested it today ... my problems are not the cyphesis server. There are some problems in installing the Mercator ... I will try it today on a testing-mashine with SuSe9.3 Personal.
  • What exactly is the error message when building/instaling mercator?

    I don't have an RPM for it yet, but it builds just fine on Suse 10.0
  • "kai" said:
    What exactly is the error message when building/instaling mercator?

    I don't have an RPM for it yet, but it builds just fine on Suse 10.0


    Yes it runs fine ... that was my fault. I've vorgotten to install fortran-headers. My corrent problem is that TSL (on that it should finaly run) has no fortran (g77, etc.) and I've to compile it by hand. Thanks for your help. I will post my finally result with TSL 2.2.
  • I'm pretty sure fortran shouldn't be needed to compile Worldforge software.
    I don't have fortran installed and it works just fine.
  • I'm now trying to compile cyphesis on an SuSe9.3 professional and I got the following error returned.

    > rpm -Uhv cyphesis-0.5.2-1.fc4.wf.i386.rpm
    error: Failed dependencies:
    initscripts is needed by cyphesis-0.5.2-1.fc4.wf

    what should I do to compile it correctly?.
  • That's because these are fedora rpms. Let me check if I can knock up some cyphesis rpms for suse. Unfortunately I have no way to test them for SuSE 9.3, as I have 10.0 myself. Could you try if eris, mercator, skstream, varconf and wfmath install from the suse10 rpms? They're available from sourceforge.

    Cheers,
    Kai
  • Kai is right, this dependency is Redhat specific. In fact the dependency is only required for the init script provided to start cyphesis as a system service, which requires /etc/rc.d/init.d/functions. It may be that things are different enough on SuSE that a patch to the init script will be required, or it may be simpler to remove the init script functionality.
  • I've installed the other rpms without any error. I've done it like it's written in cyphesis- section : first atlas then varconf ... and so on. After that I've tried to compile the tarball-archive, like I do it with debian, but the error then is, that it could not find atlas in the packet-tree.
  • Oh it was my mistaket. I've vorgotten t oadd atlas to the PKG_CONFIG_PATH ... I Thought the compiler ment the rpm-tree ... thanks for help @all
  • checking for tgetent in -ltermcap... no
    checking for tgetent in -lncurses... no
    configure: error: Cannot find tgetent in termcap or ncurses libraries!

    Could someone pleas write back what the error means ... ive installer termcap 2.0.8-879 i586 ... In the header-files of termcap is an entry with the function tgetent ... so I don't understand the problem
  • Check in config.log to see why the test programs don't work for these functions. The problem may well be because you need to run "ldconfig" to refresh the runtime linker cache files after you installed all the libraries.
  • I'm now getting it configured. After typing make there are the following errors

    Vector3D.h:8:27: wfmath/vector.h: No such file or directory
    Vector3D.h:9:26: wfmath/point.h: No such file or directory


    I have checked the wfmath-package and it has now files with the ending .h

    What should I do to getting it work.
  • I've tried to rebuild the src.rpm of cyphesis but under SuSe9.3 it does not rebuild it with "rpm --rebuild cyphesis-0.5.2-1.src.rpm".

    Could someone pleas say me how to rebuild it with SuSe ?
  • There are a number of reasons why this might be. Firstly, can you describe how you installed wfmath, and where it is installed? This should typically be either /usr or /usr/local,
    installed either from source, or from a package of some kind. Secondly can you confirm that the wfmath headers are in the expected path, eg. /usr/local/include/wfmath-0.3/wfmath/vector.h.

    Can you then confirm that when you attempt to build cyphesis, a compiler flag is included on the compiler command line telling it to search for the wfmath headers in the right place?
    Something like "-I/usr/local/include/wfmath-0.3".
  • There's many reasons why the cyphesis srpm won't build on suse. First and foremost, it requires the howl library, which isn't available for suse. Suse is using the apple lihrary.

    I am working on a cyphesis rpm for suse, but writing and testing he initscript will still take some time.
  • I was under the impression HOWL was optional at configure time - can't you disable it in the .spec for Suse?
  • Of course. That's what I'm doing. But if you just try rpmbuild --rebuild cyphesis-0.5.2.wf.srpm, it will fail. The initscript is what's difficult for the rpm :)
  • Giving the --nodeps argument to rpmbuild should get rid of the problem with the dependency on howl. Relatively little of the init script depends on anything other than normal shell syntax, so porting it to SuSE should be no more than 5 minutes work.
  • I'd like to build a clean init script for suse. Suse supports checking for running services, etc. I still think it's doable in 15 minutes, but I didn't have 15 minutes apiece this week.
  • Hi all, i`ve trying to build Cyphesis on NetBSD 2.0.2

    so i have a problem with Mercator:
    g++ -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I/usr/pkg/include/wfmath-0.3 -g -O2 -Wall -DNDEBUG -MT Terrain.lo -MD -MP -MF .deps/Terrain.Tpo -c Terrain.cpp -fPIC -DPIC -o .libs/Terrain.o
    In file included from /usr/include/g++/bits/locale_facets.tcc:41,
    from /usr/include/g++/locale:47,
    from /usr/include/g++/bits/ostream.tcc:37,
    from /usr/include/g++/ostream:535,
    from /usr/include/g++/iostream:45,
    from ../Mercator/BasePoint.h:8,
    from ../Mercator/Terrain.h:9,
    from Terrain.cpp:11:
    /usr/include/g++/cmath:107: error: `acosf' not declared

    and so on "..not declared.."... what i missed? all other libs stands perfectly. Client Ember was stand perfectly too

    thx for reading it :)

    PS, sorry for my mistakes in grammer, my english is bad :)
  • sorry again, this append for Mercator(acctually mercator 0.2.4):


    ./usr/include/g++/cmath: In function `float std::tanh(float)':
    /usr/include/g++/cmath:574: error: `tanhf' undeclared in namespace `
    __gnu_cxx::__c99_binding'
    Terrain.cpp: In member function `float Mercator::Terrain::get(float, float)
    const':
    Terrain.cpp:129: error: `::rintf' undeclared (first use here)
    *** Error code 1
  • The first error looks like an incompatibility between the C++ standard library you have installed, and the C library. Its not anything to do with Mercator as far as I can tell, as Mercator does not use tanh.

    The second error about rintf() can only be caused if your configure script did not correctly detect if your system has rintf(). Check your configure output to see which of lrintf(), rintf() and rint() your system implements. Another possibility is that the C math headers on your system do not support C99 functions when building C++, even though some of these functions are present in the C library.
  • alriddoch, thx for advice , i examed libraries and see the differense... but how to remove differ libs... without crashing other apps, hm.. i will think and trying to do it this night...
    Hm... interesting, it`s present at all netbsd`s ?.. :roll:
  • I have no idea if this is a problem with all NetBSDs, as NetBSD users are so rare. Unless you have done something weird to your system, its unlikely to be something you can fix yourself. It may need to be reported to the NetBSD maintainers.
  • great :)
  • "kai" said:
    I'd like to build a clean init script for suse. Suse supports checking for running services, etc. I still think it's doable in 15 minutes, but I didn't have 15 minutes apiece this week.


    Turns out it's been more than 15 minutes... But as I'm writing this I'm testing the suse cyphesis 0.5.9 build. Should be up on http://software.opensuse.org/download/g ... orldForge/ later today.

    Are there people who desperately need 9.3 packets?
  • Hi!

    I got all the code form CVS and want to build a server on Fedora Core 5.
    I compiled all the needed packages, including "libsigc-2.0.so.0"
    If I execute ./configure for cyphesis it ends with a:
    "checking for sigc++-2.0 >= 1.2.0... configure: error: Couldn't find sigc++ library!"

    The library was sucessfully compiled in /usr/lib/libsigc-2.0.so.0 (link) and /usr/lib/libsigc-2.0.so.0.0.0.

    I tried other libsigc-versions but nothing happens.
    Regards,
    Pascal Klein
  • I think this is a header check and it can't find the sigc++ headers. Do you have libsigc++2-devel installed?
    if you have and it's still failing, could you post your config.log?
  • Hi,

    I installed the devel-Package.
    RPM is getting me the following information:

    [root@localhost varconf]# rpm -q -a | grep libsigc
    libsigc++-1.2.7-4.fc6
    libsigc++-devel-1.2.7-4.fc6


    The config.log of varconf can be found here.


    Best regards,
    Pascal Klein
  • can you please do a
    pkg-config --modversion sigc++-2.0

    in a console and paste the output?

    Cheers,
    Kai
  • sigc++ is provided in Fedora Extras. You don't need to build it. Make sure it and the devel package are installed. If you have any libraries installed in /usr/local make sure your PKG_CONFIG_PATH includes /usr/local/lib/pkgconfig.
  • I also am getting this error! pkg-config can't find any information about libsigc++, even though I tried:

    1) Building and installing libsigc++ from a tar file, and
    2) Installing libsigc++ from yum

    How do I get pkg-config to recognize my local copy of libsigc++?

    Thanks-

    -Thomas
  • Found the problem: libsigc++ wasn't correctly installing itself.

    All packages list their .pc files in the /usr/lib/pkgconfig directory. libsigc++ doesn't even if you install as root.

    To fix: as root, manually copy the libsigc++-2.0.pc file from the libsigc++ source tree into the /usr/lib/pkgconfig directory.
  • My notes on getting cyphesis to compile locally (Fedora Core 5):

    I installed each of these libraries first. That involved downloading the tar.bz2 file, then running ./configure and make, then as root running "make install" and then copying the .pc file to /usr/lib/pkgconfig:

    libsigc++ (got this from a Google search)
    varconf (got this from the WorldForge site)
    Altas-C++ (WorldForge site)
    skstream (WorldForge site)
    wfmath (WorldForge site)
    mercator (WorldForge site)

    Then I used yum to install PostgreSQL:

    # yum install postgresql-server postgresql-devel

    Then finally I could build cyphesis (tar.bz2 from WorldForge site).
  • The list of libraries required for cyphesis is on the worldforge.org cyphesis page, and in the README file included in the source. Currently versions of all these libraries are present in the repositories for Debian, Ubuntu and Fedora, and I use the versions packaged for Ubuntu and Fedora myself. Installing the devel versions should get you everything you need.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In with Google Sign In with OpenID