Mombu the GNU Linux Forum sponsored links

Go Back   Mombu the GNU Linux Forum > GNU_Linux > Checkinstall and Symbolic link (long)
User Name
Password
REGISTER NOW! Mark Forums Read

sponsored links


Reply
 
1 12th March 14:51
cricri
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


hi slackware's users !

(first sorry for my bad english)

i'm using checkinstall after compiling some stuff to create the package,
so i can cleanly install or remove a package that have i made.

i think it's the easiest prog for creating package and i use it a lot.

All went fine, but !

when i create a package witch contain some library checkinstall create
the script doinst.sh witch is exexcute after package installation.
but this script does not make the require symbolic link for library (i
think).

More clearly this is a doinst.sh create by checkinstall for the package
obexftp-0.10.4
--snip--
ldconfig
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 )
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 )
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 )
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 )
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 )
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 )
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 )
( cd . ; rm -rf 27 )
( cd . ; ln -sf -> 27 ) ??

in /usr/lib i have after package installation :

chris@nec:~/temp/bluez/obexftp-0.10.4$ ls -l /usr/lib/libobexf*
-rw-r--r-- 1 root root 113644 2004-02-28 16:27
/usr/lib/libobexftp.a
-rwxr-xr-x 1 root root 723 2004-02-28 16:27
/usr/lib/libobexftp.la*
lrwxrwxrwx 1 root root 20 2004-02-28 16:28
/usr/lib/libobexftp.so.0 -> libobexftp.so.0.0.11*
-rwxr-xr-x 1 root root 15484 2004-02-28 16:27
/usr/lib/libobexftp.so.0.0.11*

There is no symbolic link libobexftp.so -> libobexftp.so.0.0.11

Then when i compile an another prog which depend of libobexftp.so
= compile error
So i must manualy create this symbolic link.

I have this problem for all prog that contain library.
I've googled with no success. i've find may be this relevant information
in the faq of checkinstall
http://asic-linux.com.mx/~izto/checkinstall/faq.php

for now i don't replace my existing 'ln' binary

I use slackware 9.1 and checkinstall 1.6 beta3

Any Idea,suggestion ?
  Reply With Quote


  sponsored links


2 12th March 16:38
vigil
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


Yeah, in certain cases where symlinks are created (PHP for one), you have
to do a 'make install' and then 'checkinstall'. No big deal.

--

..
  Reply With Quote
3 12th March 19:49
cricri
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


Le 02/29/2004 01:26 AM, :


Thanks for your reply. I've used this too but, later when you want to
reinstall this package, you have not the source tree to do a make
install and your package don't contain the necessary symbolic link So
.... :-(

Imagine that like me, you have a second pc and you want install
slackware on and some package you have previously made so you don't have
to recompile all the needed things you need. with this packages that
don't contain all the needed symbolic links we are going to trouble :-(

May be a bug in checkinstall or 'ln' like the Faq says. who knows ?
  Reply With Quote
4 12th March 23:08
vigil
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


Ah, I see. Yeah, a bummer if you don't want to recompile again, but I
don't know what to do other than try the lastest stable version of
checkinstall.

--

..
  Reply With Quote
5 13th March 03:04
gregor bausch
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


Hi Cricri,

On Sun, 29 Feb 2004 14:11:42 +0100


Why don't you use 'makepkg'? I use that to deploy packages throughout
the net a lot and it works fine.

For that you'll need to make a built-directory with the path of the
original directory:
/built/usr/...
/built/bin/...
/built/sbin/...
/built/lib/...
etc.

configure --prefix=/built/usr/... --sysconfdir=/built/etc/...
make
go to your /built and makepkg.

Try man makepkg for further info.
That's it ;->

-gregor

--
You are wise, witty, and wonderful, but you spend too much time reading
this sort of trash.
  Reply With Quote
6 13th March 04:36
cricri
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


Le 03/01/2004 02:53 PM, :


Thanks for your reply gregor,
chechkinstall seems so simple to use but if makepkg make a good job
i will gave it a try.

Christophe
  Reply With Quote
7 13th March 04:36
joost kremers
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


this is a very bad idea. read an earlier post of mine on this:
<slrnc0g76h.7v.joostkremers@j.kremers4.news.arnhem .chello.nl>

--
Joost Kremers joostkremers@yahoo.com
Slackware doesn't have any quirks. Other distros have quirks. Slackware's
just pure Linux.
  Reply With Quote
8 13th March 05:52
stuart winter
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


You could try using slacktrack from slackware-current/extra
In your build script, you'd have something like

cd /tmp
tar zxf $CWD/foo.tgz
cd foo
../configure --prefix=/usr
make
make install
mkdir /install
install -m644 $CWD/slack-desc /install

Save that as foo.build
chmod 755 foo.build
slacktrack -Qnp foo-1.0-arch-1.tgz ./foo.build

The package will end up in /tmp
If your symlinks don't work properly, let me know about it
and I'll look at it.

--
Stuart Winter
http://www.interlude.org.uk & http://www.biscuit.org.uk
| Washing machines live longer with Calgon
  Reply With Quote
9 13th March 07:36
steve youngs
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


* Gregor Bausch <gbausch@online.de> writes:


As long as you have `/built/', then the `make install' should take
care of the rest.

Ouch, you like to do things the hard way don't you? Not to mention
that you could very well run into trouble with libraries that hard-code
their install path at compile time.

The easy, quick, right way...

./configure [options]
make
make DESTDIR=/path/to/built install [1]
cd /path/to/built
makepkg

Footnotes:
[1] Grep the Makefile for "DESTDIR", and if it doesn't exist just do
`make prefix=/path/to/built/usr/local install' instead.

--
|---<Steve Youngs>---------------<GnuPG KeyID: A94B3003>---|
| Ashes to ashes, dust to dust. |
| The proof of the pudding, is under the crust. |
|------------------------------<sryoungs@bigpond.net.au>---|
  Reply With Quote
10 13th March 07:36
cricri
External User
 
Posts: 1
Default Checkinstall and Symbolic link (long)


Le 03/01/2004 07:25 PM, :


I'm a noob and it take me a long time to figure out that you've miss the
first line : CWD='pwd' thanks to slacktrack-examples-v1.00.tar.gz ;-)


and a little typo ./configure instead of ..

Congratulation ! below the last output :

Slackware package maker, version 2.1.
Searching for symbolic links:
usr/lib/libopenobex.so -> libopenobex-1.0.so.1.0.0
usr/lib/libopenobex-1.0.so.1 -> libopenobex-1.0.so.1.0.0

Making symbolic link creation script:
( cd usr/lib ; rm -rf libopenobex.so )
( cd usr/lib ; ln -sf libopenobex-1.0.so.1.0.0 libopenobex.so )
( cd usr/lib ; rm -rf libopenobex-1.0.so.1 )
( cd usr/lib ; ln -sf libopenobex-1.0.so.1.0.0 libopenobex-1.0.so.1 )

It work :-)

Just a remark, (you're going to think that i'm a lazy gye)
with slacktrack we need the build script, it's like the Pat's job ;-)
I think this is not a easy job and it can take much time, i'm not
recompile the same package but sometime a lot of small package like the
bluez series. May be you can make slacktrack more 'automatic'.

Thanks
  Reply With Quote
Reply


Thread Tools
Display Modes




Copyright 2006 SmartyDevil.com - Dies Mies Jeschet Boenedoesef Douvema Enitemaus -
666