Solaris Installation Questions


We tried to install Predator, but somewhere along the way the make crashes. It says 'make failed for target ntype'; the file document.c is there but the corresponding object file does not get created... (in directory PREDATOR/code/newtypes).
The problem is that cstring.h is being included when it should not. Examine your $XXXROOT/newtypes/.depend.newtype file and see where it is being included from. Also check to make sure you correctly specified the GCCINCLUDES variable in $XXXROOT/make_include.utilities correctly. It is important that you do not use the gcc string-template files, but the ones in /usr/include.

Although I followed the instructions on your web site I receive an error when I try to compile the system by 'make code' the session ends with the words ...
    ~predator/> make code
    (mkdir code)
    (cd code; /code/premake; make setup; make co; make install; make tags;
    cd ..;)
    sh: /code/premake: not found
    make: Fatal error: Don't know how to make target `setup'
    Current working directory /home/test/predator/code
    make: Fatal error: Don't know how to make target `co'
    Current working directory /home/test/predator/code
    make: Fatal error: Don't know how to make target `install'
    Current working directory /home/test/predator/code
    make: Fatal error: Don't know how to make target `tags'
    Current working directory /home/test/predator/code
Make sure your $XXX_RCSROOT is defined in your shell .rc file. For example, your .cshrc should have something similar to the following
    setenv PREDATOR_LAIR install_location/PREDATOR
    setenv XXX_RCSROOT $PREDATOR_LAIR/xxx

I have recompiled shore1.1. Now, I am recompiling Predator. But, the following lines in the header file */predator/shore/aug97opt/include/sm.h
                  // Added in for the Predator group
                  static vid_t get_vid(const lvid_t& lvid)
disappear in the current shore1.1 release. So I had problems to compile the shoresm.C in the "utils" directory of Predator.
The function get_vid is a function Predator needs, but was not originally included in Shore. We've already submitted this change to the Shore authorities, and it will hopefully be included in the next Shore release if it has not already been done so. In the meantime, all you need to do is to make sure that the get_vid implementation is in shoresm.c, and that the header file line you mentioned (get_vid prototype) is inserted into the shore1.1. sm.h file you've downloaded. Here is the code for get_vid if you need it. But beware that this is only a hack for Shore 1.1. Furthermore if you get a link-time conflict due to this function being doubly-defined, comment this function out.
    vid_t ss_m::get_vid(const lvid_t& lvid)
    {
    return (io->get_vid(lvid));
    }

While compiling /home/test/predator/code/bin/xxx, I get the following error message
    Undefined                                             first referenced
    symbol                                                         in file
    __10ostrstreamiRC10ostrstream             /home/test/PREDATOR/shore/aug97opt/lib/l
    ibcommon.a(errlog.o)
This is a Shore problem. They have a description and fix of this bug at http://www.cs.wisc.edu/shore/FAQ.html under B1

I face problems starting the server. The server is not able to start.
    Using a 8000 KB buffer pool of 1000 pages.
    Using log directory = /user/test/predator/code/regression/log
    dir
    Using Diskrw = /user/test/PREDATOR/shore/aug97opt/bin/diskrw
    fatal error: cannot create shared memory
    fatal error: 1. error in w_shmem.cc:35 Operating system error
    --- Invalid argument
                  called from:
                  0) sthread.cc:797
The problem is that you do not have the proper permissions to use shared memory on your machine. Shared memory is required to create PREDATOR's buffer pool. Contact your sysadmin for these permissions. He/she will have to change the /etc/system file on your machine. As an example, my /etc/system file contains the following entries:

set shmsys:shminfo_shmmin=200
set shmsys:shminfo_shmseg=200
set shmsys:shminfo_shmmax=16777216
set shmsys:shminfo_shmmni=200

I have my own version of Shore installed. Can I use it with PREDATOR?

We have made one minor change to Shore 1.1. We add one public static method to the ss_m class in sm.h. This change is already reflected in the version of Shore released with Predator. If you get an independent distribution of Shore from U.Wisconsin, you should add the following to sm.h in the public part of class ss_m:

    // Added in for the Predator group
    static vid_t get_vid(const lvid_t& lvid);
The definition of this function is in utils/shoresm.C, so you will probably not need to recompile your shore library.

After I receive e-mail about successful PREDATOR compilation there are some java errors. How do I fix this ?

Do the following:

   cd $XXXROOT/java
   ln -s $PREDATOR_LAIR/jclass

Is PREDATOR available for Linux?

No, PREDATOR is not (and will not be) available for Linux. PREDATOR uses Shore which lacks support for Linux. However, because PREDATOR is all high level code it would be very easy to port. Feel free to try.


Mail user support: predator-support@cs.cornell.edu .... Back to PREDATOR Home Page