Re: s6-rc compilation issue
This can be fixed be creating a symlink : ln -s /usr/local/stow/skarnet/lib/s6/libs6.a /usr/local/stow/skarnet/lib/libs6.a No, this is intentional. The skarnet.org build system installs static libraries in a subdirectory of $prefix/lib by default, as shown in the output of ./configure --help. If you want to link against them, you need to give appropriate --with-lib options to ./configure. So, in your case: For execline, you'd add --with-lib=/usr/local/stow/skarnet/lib/skalibs For s6, you'd add --with-lib=/usr/local/stow/skarnet/lib/skalibs \ --with-lib=/usr/local/stow/skarnet/lib/execline And for s6-rc, you'd add --with-lib=/usr/local/stow/skarnet/lib/skalibs \ --with-lib=/usr/local/stow/skarnet/lib/execline \ --with-lib=/usr/local/stow/skarnet/lib/s6 That's impractical, but a clear separation of build-time files and run-time files is worth the small inconvenience. Alternatively, if you don't care about this separation and simply want everything in /usr/local/stow/skarnet/lib, you can say so at installation time, by giving the following option to every ./configure in the stack: --libdir=/usr/local/stow/skarnet/lib which will achieve what you're looking for. -- Laurent
s6-rc compilation issue
Hello there, I have a small issue to compile s6-rc. I am trying some skarnet tools (execline, s6 and s6-rc). As I want to test them and to install and uninstall them easily, I use GNU Stow (https://www.gnu.org/software/stow/). I have chosen to install them into /usr/local/stow/skarnet. I have successfully built and installed skalibs, execline and s6 using the following commands: ./configure --prefix=/usr/local/stow/skarnet make sudo make install But when trying to build s6-rc, it gives me this error : > make make: *** No rule to make target '-ls6', needed by 's6-rc-fdholder-filler'. Stop. This can be fixed be creating a symlink : ln -s /usr/local/stow/skarnet/lib/s6/libs6.a /usr/local/stow/skarnet/lib/libs6.a stow -d /usr/local/stow -R skarnet So I guess there is a lib path missing somewhere, but as I have never written any configure script, I am not sure how to fix it. How should it be fixed ? Best regards, Guillaume Perréal.
Re: Compilation issue
On Wed, 27 Apr 2016 17:41:56 +0200 Laurent Bercotwrote: > On 27/04/2016 16:37, Luis Ressel wrote: > > Go ahead and install the skarnet stuff to /usr/local. You'll just have > > to be careful that execline scripts are always executed with > > PATH=/usr/local/bin:/usr/local/sbin:... . > > Not only execline scripts, but mostly everything that calls s6 binaries. > s6 sometimes expects execline binaries to be in the PATH. As far as I'm > aware, no autogenerated command line calls "import", partly because of this > issue, and you can reasonably expect it to remain true in the foreseeable > future, but I don't want to make it an absolute guarantee. > > Also: if you're not going to install stuff in real slashpackage > directories, then don't use --enable-slashpackage at all. You want to go > with the FHS, you get the FHS. > > -- > Laurent thank at twice for your advice luis and laurent. i go to study deeply the system. -- Eric Vidal
Re: Compilation issue
On 27/04/2016 16:37, Luis Ressel wrote: Go ahead and install the skarnet stuff to /usr/local. You'll just have to be careful that execline scripts are always executed with PATH=/usr/local/bin:/usr/local/sbin:... . Not only execline scripts, but mostly everything that calls s6 binaries. s6 sometimes expects execline binaries to be in the PATH. As far as I'm aware, no autogenerated command line calls "import", partly because of this issue, and you can reasonably expect it to remain true in the foreseeable future, but I don't want to make it an absolute guarantee. Also: if you're not going to install stuff in real slashpackage directories, then don't use --enable-slashpackage at all. You want to go with the FHS, you get the FHS. -- Laurent
Re: Compilation issue
On Wed, 27 Apr 2016 18:09:01 +0400 Eric Vidalwrote: > [snip] Maybe a can use /usr/local/?! > > So i'm a little confuse about this. Have you an idea? Sure, that's exactly the purpose of /usr/local: Inside that directory, the sysadmin can do whatever they want and the distro stays out of the way. (Ideally...) Go ahead and install the skarnet stuff to /usr/local. You'll just have to be careful that execline scripts are always executed with PATH=/usr/local/bin:/usr/local/sbin:... . -- Regards, Luis Ressel Luis Ressel GPG fpr: F08D 2AF6 655E 25DE 52BC E53D 08F5 7F90 3029 B5BD pgpMRy4Q6jgLu.pgp Description: OpenPGP digital signature
Re: Compilation issue
On 27/04/2016 11:21, Eric Vidal wrote: i try to compile skalibs and execline package with --enable-slashpackage options set to s6 for me. Hi Eric, The argument to --enable-slashpackage, if any, must be an *absolute* directory, and one shared by every skarnet.org package you compile "--enable-slashpackage=s6" will not work. Generally speaking, if you're interested in following the slashpackage convention, you should use --enable-slashpackage but leave the prefix empty. If you're installing a package in a staging directory, for a package manager or something of the kind, you should *still* leave that prefix empty, but use the DESTDIR make variable to install the package into the $DESTDIR staging directory; then when you compile things that depend on that package, additionally to --enable-slashpackage, you should use the --with-sysdeps, --with-include, --with-lib and --with-dynlib configure options to specify where the package can find its dependencies. -- Laurent
Compilation issue
Hello, i try to compile skalibs and execline package with --enable-slashpackage options set to s6 for me. skalibs package compile without trouble but install things with this following path : s6/skalibs/pkg/skalibs-git/s6/package/prog/skalibs-2.3.11.0/sysdeps/ Well, when i try to compile execline with --enable-slashpackage=s6 the compilation complaint with this following message : error: s6/package/prog/skalibs/sysdeps is not a valid sysdeps directory Obviously, this is normal viewing the path defined in the skalibs package. But, why skalibs makefile implement the version of the package? Maybe i do somethings wrong. Any helps will be appreciate to understand my errors. Eric Vidal -- Eric Vidal