Go Back   ZeroC Forums > Bug Reports

Reply
 
LinkBack Thread Tools Rate Thread Display Modes
  #1 (permalink)  
Old 05-21-2008
asamardzic asamardzic is offline
Registered User
 
Name: Aleksandar Samardzic
Organization: SlackBuilds
Project: Slackware package
 
Join Date: Apr 2008
Posts: 7
Ice installation locations

(Am posting here because on Linux, Ice installation directories seem to be not following LSB recommendations, that may be eventually considered as kind of bug).

Still working on creating Slackware package for Ice. Ice 3.3.0 compiles fine with system-wide installed mcpp 2.7.1, but I encountered several other smaller issues:

1. Would it be possible, without changing Ice makefiles, to select languages for which Ice will be compiled? For example, compiling Ice for Java requires JDK and Ant, none of which is installed on Slackware by default. I can skip compiling Ice for Java by editing SUBDIRS and INSTALL_SUBDIRS variables in top-level Makefile, however more preferable would be to be able to compile and install Ice through not changing makefile, but through specifying some kind of make variable when running make instead, something like:
make install LANGUAGES="cpp py"

2. Ice seems to be intended to be installed in dedicated directory, which makes it hard to create a package that will have installed files properly distributed throughout file system according to the LSB (Linux Standard Base (LSB) - The Linux Foundation) file system hierarchy recommendations. Having "bin", "include" and "lib" subdirectories under installation prefix is fine, but I'm wondering is it possible to change where "ICE_LICENSE" and "LICENSE" files, as well as "config" and "slice" sub-directories, and language sub-directories (like "python" or "ruby") under installation directory are stored (also, skipping creating /opt/Ice-3.3 symlink to the installation directory would be nice)? According to LSB, I guess these should be put under "share/Ice" subdirectory of the installation prefix.

Thanks.
Reply With Quote
  #2 (permalink)  
Old 05-21-2008
mefoster mefoster is offline
Registered User
 
Name: Mary Ellen Foster
Organization: Technical University of Munich
Project: JAST human-robot dialogue system
 
Join Date: Jun 2006
Posts: 78
Quote:
Originally Posted by asamardzic View Post
2. Ice seems to be intended to be installed in dedicated directory, which makes it hard to create a package that will have installed files properly distributed throughout file system according to the LSB (Linux Standard Base (LSB) - The Linux Foundation) file system hierarchy recommendations. Having "bin", "include" and "lib" subdirectories under installation prefix is fine, but I'm wondering is it possible to change where "ICE_LICENSE" and "LICENSE" files, as well as "config" and "slice" sub-directories, and language sub-directories (like "python" or "ruby") under installation directory are stored (also, skipping creating /opt/Ice-3.3 symlink to the installation directory would be nice)? According to LSB, I guess these should be put under "share/Ice" subdirectory of the installation prefix.
On Fedora, I just have a big step after compiling where I move $ICE_HOME/bin/*, $ICE_HOME/lib/* to /usr/lib[64], etc ...

MEF
__________________
Mary Ellen Foster
Technical University of Munich
JAST human-robot dialogue system
Maintainer of Fedora Ice packages
Reply With Quote
  #3 (permalink)  
Old 05-21-2008
asamardzic asamardzic is offline
Registered User
 
Name: Aleksandar Samardzic
Organization: SlackBuilds
Project: Slackware package
 
Join Date: Apr 2008
Posts: 7
Quote:
Originally Posted by mefoster View Post
On Fedora, I just have a big step after compiling where I move $ICE_HOME/bin/*, $ICE_HOME/lib/* to /usr/lib[64], etc ...
Sure - these are obvious, and unlikely to make any kind of problem. But, as mentioned in my first post, I'm more concerned about "config", "slice", and language sub-directories - am not still sure how these are exactly used by the rest of the Ice, and would moving them to some random locations in the file-system break anything?
Reply With Quote
  #4 (permalink)  
Old 05-21-2008
mefoster mefoster is offline
Registered User
 
Name: Mary Ellen Foster
Organization: Technical University of Munich
Project: JAST human-robot dialogue system
 
Join Date: Jun 2006
Posts: 78
Quote:
Originally Posted by asamardzic View Post
Sure - these are obvious, and unlikely to make any kind of problem. But, as mentioned in my first post, I'm more concerned about "config", "slice", and language sub-directories - am not still sure how these are exactly used by the rest of the Ice, and would moving them to some random locations in the file-system break anything?
I also put the Python and Ruby files into the corresponding site_arch directories (i.e., python stuff goes into /usr/lib/python2.5/site-packages and /usr/lib/ruby/site_ruby/1.8/i386-linux on my Fedora 8 i386 box). The Mono stuff also goes into a Mono-specific directory, although I'm currently trying to figure out whether I've got that part totally correct.

The other stuff I just put under /usr/share/Ice-${version}; I don't think that's a big problem.

MEF
__________________
Mary Ellen Foster
Technical University of Munich
JAST human-robot dialogue system
Maintainer of Fedora Ice packages
Reply With Quote
  #5 (permalink)  
Old 05-22-2008
asamardzic asamardzic is offline
Registered User
 
Name: Aleksandar Samardzic
Organization: SlackBuilds
Project: Slackware package
 
Join Date: Apr 2008
Posts: 7
Quote:
Originally Posted by mefoster View Post
I also put the Python and Ruby files into the corresponding site_arch directories (i.e., python stuff goes into /usr/lib/python2.5/site-packages and /usr/lib/ruby/site_ruby/1.8/i386-linux on my Fedora 8 i386 box). The Mono stuff also goes into a Mono-specific directory, although I'm currently trying to figure out whether I've got that part totally correct.

The other stuff I just put under /usr/share/Ice-${version}; I don't think that's a big problem.
Thanks for hints - good to know that it could work this way.

So, before just doing something alike in my install script, I'd like to ask ZeroC stuff is there any chance that makefiles will be extended to support (seems to me that most of following, especially #3, could be considered as bugs):

1. Having set of languages selected during "make" phase remembered for "make install" phase? I realized, after writing previous messages, that I could compile desired set of languages through simply enumerating corresponding make targets explicitly, for example "make cpp py". However, for "make install", I'd still have to edit top-level makefile in order to change INSTALL_SUBDIRS (and "make install INSTALL_SUBDIRS='cpp py'" wouldn't work, because there is another INSTALL_SUBDIRS instance in cpp/Makefile)?

2. Having set of flags (say, CXXFLAGS="-march=i686 -mtune=i686" comes to my mind) passed to the compiler at "make" phase?

3. Having "slice", as well as "python" and other languages installation sub-directories selectable at "make install" phase? I found that I could set "config" installation sub-directory through "make install install_configdir=$my_install_prefix/share/Ice/config/" (also, it is possible to disable creating /opt/Ice-3.3.0 symlink through "make install create_runpath_symlink=no"), however "make install install_slicedir=$my_install_prefix/share/Ice/slice" doesn't work because "-p" flag is not employed to corresponding "mkdir" command, and also something like "make install install_pythondir=$my_install_prefix/lib/python2.5/site-packages" doesn't work because in corresponding makefile (it's py/config/Make.rules), install_libdir is just hard-coded back to $(prefix)/python, thus completely ignoring install_pythondir.

Thanks.
Reply With Quote
  #6 (permalink)  
Old 05-22-2008
bernard's Avatar
bernard bernard is offline
ZeroC Staff
 
Name: Bernard Normier
Organization: ZeroC, Inc.
Project: Ice
 
Join Date: Feb 2003
Location: Palm Beach Gardens, FL
Posts: 813
Hi Aleksandar,

We don't plan to change 'make install' to support other types of installation layout. I recommend to download our source RPM and see what it does.

After build/installation, you can move files around as you see fit. Pretty much any file can go anywhere. There are just a few files that "look" for other files in a list of locations, for example Ice.jar finds db.jar in a few locations, IceGridGUI.jar tries to find its online help in a few locations, the demo build system (if you install the demo tarball) looks for the Ice installation in a few locations.

Cheers,
Bernard
__________________
Bernard Normier
ZeroC, Inc.
Reply With Quote
  #7 (permalink)  
Old 06-08-2008
asamardzic asamardzic is offline
Registered User
 
Name: Aleksandar Samardzic
Organization: SlackBuilds
Project: Slackware package
 
Join Date: Apr 2008
Posts: 7
(I guess it may not be best place here for an announcement, but as "Announcements" seems to be used for official ZeroC announcements only, and as it is already discussed here

FWIW, Slackware package for Ice is available at: SlackBuilds.org - Ice. It is actually in the form of the so-called "SlackBuild", that is the script that could be used together with the Ice source archive to build proper Slackware package.

Regards,
Alex
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Ice 3.2.1 installation on FC4 janarbek Help Center 17 02-14-2008 01:07 AM
"make test" failure on Ice 3.0.1 installation. SUSE 10.1. pchapin Help Center 4 05-22-2006 11:20 PM
ICE installation for VS 2005 Alex Goldobin Help Center 1 12-13-2005 06:06 AM
Need help with Ice Installation anitha Help Center 5 09-04-2005 11:06 AM
Installation of Ice stephan Help Center 1 05-20-2005 06:35 AM


All times are GMT -4. The time now is 08:51 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.0.0
(c) 2008 ZeroC, Inc.