Ice 3.0.0 and Gentoo ebuild

in Help Center
Hi,
I am trying to create ebuild file for Gentoo Linux, but I have one problem. Gentoo needs Ice to be compiled ("installed") inside other directory than where it will reside later. For example, if I want to have Ice in opt/Ice-3.0.0/ I have to make install in /var/tmp/portage/ice-3.0.0/image/opt/Ice-3.0.0/
Problem is that if I compile Ice with conf/Make.Rules with line:
prefix = /var/tmp/portage/ice-3.0.0/image/opt/Ice-3.0.0
than in some binary files is written this full path (it was not so before 3.0.0 version) and Gentoo knows it so compilation will fail.
Is there any work around?
Thanks
I am trying to create ebuild file for Gentoo Linux, but I have one problem. Gentoo needs Ice to be compiled ("installed") inside other directory than where it will reside later. For example, if I want to have Ice in opt/Ice-3.0.0/ I have to make install in /var/tmp/portage/ice-3.0.0/image/opt/Ice-3.0.0/
Problem is that if I compile Ice with conf/Make.Rules with line:
prefix = /var/tmp/portage/ice-3.0.0/image/opt/Ice-3.0.0
than in some binary files is written this full path (it was not so before 3.0.0 version) and Gentoo knows it so compilation will fail.
Is there any work around?
Thanks
0
Comments
So one solution would be to use different prefix values during the build and the installation.
In previous releases, Ice did not embed any path in binaries. You could also revert to this old behavior by editing config/Make.rules.Linux.
Cheers,
Bernard
Alternatively, you can modify the 'install_libdir' definition in 'Make.rules' to refer to the final installation directory instead of the value of $(prefix)/lib before 'make install' is run.
If the rpath linker directive embedding the library path isn't the problem, could you elaborate what the precise issue is?
Cheers
LDPLATFORMFLAGS = -Wl,--enable-new-dtags -Wl,-rpath,$(install_libdir)
to
LDPLATFORMFLAGS = -Wl,--enable-new-dtags -Wl,-rpath,/opt/Ice-3.0.0/lib
or something like that.
That being said, the first suggestion might be the easiest. It is essentially the same 'trick' we use when packaging up our binary distributions.
Sorry for the confusion.
Cheers