Archived

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

Problems compiling IceCS with mono on Fedora Core 3

Hi all,

I've run into two small glitches getting this to compile. I overcame one, but I haven't figured out how to overcome the other.

First, some info on my platform:
OS: Fedora Core 3
Architecture: x86
Ice version: 2.0.0
mono version: 1.0.2

The first problem I ran into was that the lib/ directory was not created in the source distribution. Once I created that, compilation continued, until:

making all in starter
make[3]: Entering directory `/home/sblake/build/IceCS-2.0.0/test/Glacier/starter'
slice2cs --output-dir generated --ice -I. -I../../../slice Callback.ice
slice2cs: can't open `generated/Callback.cs' for writing
make[3]: *** [generated/Callback.cs] Error 1

When I looked, i noticed that the directory "generated" did not exist, although a directory called generate did. So I tried:
$ mv generate generated

But I still get the same error.

Permissions all look correct for the directory, I have read write and execute permissions on it.

Any ideas?

Thanks,
Stephen

Comments

  • Re: Problems compiling IceCS with mono on Fedora Core 3
    Originally posted by iostream
    The first problem I ran into was that the lib/ directory was not created in the source distribution.

    My apologies -- that directory should have been included in the distribution.
    Once I created that, compilation continued, until:

    making all in starter
    make[3]: Entering directory `/home/sblake/build/IceCS-2.0.0/test/Glacier/starter'
    slice2cs --output-dir generated --ice -I. -I../../../slice Callback.ice
    slice2cs: can't open `generated/Callback.cs' for writing
    make[3]: *** [generated/Callback.cs] Error 1

    When I looked, i noticed that the directory "generated" did not exist, although a directory called generate did. So I tried:
    $ mv generate generated

    But I still get the same error.

    No, the "generate" directory is meant to be called "generate", so don't rename that. But, instead, do:

    mkdir test/Glacier/started/generated

    Again, my apologies, that directory should have been included in the distribution as well. The generated directory is where the slice2cs compiler puts the generated files but, if that directory does not exist, it obviously can't do that. So, simply create the directory and things should work.

    Cheers,

    Michi.
  • Hi Michi,

    Thanks for the reply, that worked. It's now all compiled up and happy, but I encounter an error upon trying to make install:

    make[3]: Entering directory `/home/sblake/build/IceCS-2.0.0/test/Ice/adapterDeactivation'
    cp -fp ../../../lib/ /opt/icecs-1.3.0/lib
    cp: omitting directory `../../../lib/'
    make[3]: *** [install] Error 1

    Is it supposed to be trying to copy the entire lib directory or is a file being omitted?

    Thanks,
    Stephen
  • Again, my apologies, the install target in a number of makefiles is nonsense. I've attached a patch that fixes this. Thanks for letting us know!

    Cheers,

    Michi.
  • that did it

    Hi Michi,

    Thanks for checking into this, that patch seems to take care of the other problems.

    By the way, I have now installed C++ Ice, python Ice, and C# ice. They are in my /opt directory like this:

    $ ls -1 /opt/
    Ice-2.0.0
    icecs-1.3.0
    IcePy-2.0.0

    Seems like for consistency icecs-1.3.0 should be IceCS-2.0.0, no? Maybe you have a reason for doing it this way, though. Just a thought. As they say, consistency is the bugaboo of small minds, and mine is pretty small. :)

    Thanks again!
    Stephen
  • Re: that did it
    Originally posted by iostream
    $ ls -1 /opt/
    Ice-2.0.0
    icecs-1.3.0
    IcePy-2.0.0

    Seems like for consistency icecs-1.3.0 should be IceCS-2.0.0, no? Maybe you have a reason for doing it this way, though.

    Yes, actually, I do have a reason for this: the reason is that I forgot to update the version number in the Makefile ;) Thanks for pointing this out -- I'll fix this for the next release.

    Cheers,

    Michi.