For Programmers: Free Programming Magazines  


Home > Archive > Unix Programming > May 2004 > When package depends on others & you can't install any of them









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author When package depends on others & you can't install any of them
Charles Packer

2004-05-20, 12:33 pm

I would like to build Gimp (GNU Image Manipulation Program) on our office
Solaris system. For political reasons, I can't install (i.e. "make
install") any of the packages on which it depends. And it depends on a
whole lot: GTK, which depends on pango, which depends on fontconfig,
which depends on freetype. Ordinarily, one would do a "make install" on
each package from the bottom up. The problem I ran into right away was
that fontconfig depends on header files of freetype. In the past I've
built packages where I could specify an additional include path at
configure time, but I don't remember the particulars, and anyway it was
a MUCH simpler situation. In this situation, is it even practical to
build GIMP? If so, could somebody outline a general strategy that would
apply ALL THE WAY UP the tree and I'll take it from there by reading the
relevant man pages.
those who know me have no need of my name

2004-05-21, 12:31 am

in comp.unix.programmer i read:

>I would like to build Gimp (GNU Image Manipulation Program) on our office
>Solaris system. For political reasons, I can't install (i.e. "make
>install") any of the packages on which it depends.


build all dependencies static and install to a temporary location, which
you can remove when you are done, e.g.,

mkdir /tmp/x
CPPFLAGS="-I/tmp/x/include${CPPFLAGS+ $CPPFLAGS}"
LDFLAGS="-L/tmp/x/lib${LDFLAGS+ $LDFLAGS}"
export CPPFLAGS LDFLAGS

cd freetype*
./configure --prefix=/tmp/x --disable-shared && make && make install
cd ..

cd fontconfig*
./configure --prefix=/tmp/x --disable-shared && make && make install
cd ..

...

cd gimp*
./configure --prefix=/usr/local/or/whatever && make && make install
cd ..

rm -rf /tmp/x

--
a signature
Charles Packer

2004-05-21, 12:35 pm

those who know me have no need of my name <not-a-real-address@usa.net> wrote in message news:<m17jv6ts4t.gnus@usa.net>...
> build all dependencies static and install to a temporary location, which
> you can remove when you are done, e.g.,
>
> mkdir /tmp/x
> CPPFLAGS="-I/tmp/x/include${CPPFLAGS+ $CPPFLAGS}"
> LDFLAGS="-L/tmp/x/lib${LDFLAGS+ $LDFLAGS}"
> export CPPFLAGS LDFLAGS
>
> cd freetype*
> ./configure --prefix=/tmp/x --disable-shared && make && make install
> cd ..
>
> cd fontconfig*
> ./configure --prefix=/tmp/x --disable-shared && make && make install
> cd ..


I tried this literally as you have written as a /bin/sh script (I
assume this is what you had in mind) and, alas, it still can't find
freetype. The error message was:

configure: error: You must have freetype installed; see
http://www.freetype.org/

Thanks anyway, and I'll study the configure script for fontconfig
where this message is printed out to see if I can learn anything.
those who know me have no need of my name

2004-05-21, 5:32 pm

in comp.unix.programmer i read:
>those who know me have no need of my name <not-a-real-address@usa.net>
>wrote in message news:<m17jv6ts4t.gnus@usa.net>...


[color=darkred]
>I tried this literally as you have written as a /bin/sh script (I
>assume this is what you had in mind)


well, as a shell script template at least.

>and, alas, it still can't find
>freetype.


you may need to use a special argument, e.g., `--with-freetype=/tmp/x' or
such added to the Gimp configure invocation.

--
a signature
Lőrinczy Zsigmond

2004-05-23, 9:31 am

Charles Packer wrote:
> I would like to build Gimp (GNU Image Manipulation Program) on our office
> Solaris system. For political reasons, I can't install (i.e. "make
> install") any of the packages on which it depends. And it depends on a
> whole lot: GTK, which depends on pango, which depends on fontconfig,
> which depends on freetype. Ordinarily, one would do a "make install" on
> each package from the bottom up. The problem I ran into right away was
> that fontconfig depends on header files of freetype. In the past I've
> built packages where I could specify an additional include path at
> configure time, but I don't remember the particulars, and anyway it was
> a MUCH simpler situation. In this situation, is it even practical to
> build GIMP? If so, could somebody outline a general strategy that would
> apply ALL THE WAY UP the tree and I'll take it from there by reading the
> relevant man pages.


These softwares use pkg-config to use find headers and libraries
(http://www.freedesktop.org/Software/pkgconfig)
you should configure them with --prefix=/home/lali
and add /home/lali/bin to the PATH, /home/lali/share/man to the MANPATH,
/home/lali/lib/pkgconfig to PKG_CONFIG_PATH and so on.
user@domain.invalid

2004-05-23, 10:32 pm



Charles Packer wrote:
> I would like to build Gimp (GNU Image Manipulation Program) on our office
> Solaris system. For political reasons, I can't install (i.e. "make
> install") any of the packages on which it depends. And it depends on a
> whole lot: GTK, which depends on pango, which depends on fontconfig,
> which depends on freetype. Ordinarily, one would do a "make install" on
> each package from the bottom up. The problem I ran into right away was
> that fontconfig depends on header files of freetype. In the past I've
> built packages where I could specify an additional include path at
> configure time, but I don't remember the particulars, and anyway it was
> a MUCH simpler situation. In this situation, is it even practical to
> build GIMP? If so, could somebody outline a general strategy that would
> apply ALL THE WAY UP the tree and I'll take it from there by reading the
> relevant man pages.


I haven't tried this, but it should work.
If you use the 'translucency' module on the directorys that would be
chanded by the installs (/usr, /etc, /var) you can then install what you
want and none of the changes would be permanent. All the changes made
by the install scripts would end up in the directory you used for the
translucency overlay. To run the program all you would have to do is
use a script to re-setup the translucency module how it was when you did
the install, and everything should work.

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com