This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problem with clisp package.


The packaged CLISP is built using libsigsegv. However, that library is
not packaged with it, so it's not possible to do custom links of CLISP,
which some CLISP-based applications need to do!

(That is to say, some programs add their own C functions to CLISP by
adding them to the set of pieces from which CLISP is made to link
a custom image.  These pieces, static libs really, are collectively
called a ``linking set''.  When CLISP is built and installed, it
creates two linking sets by default, in $PREFIX/lib/clisp/base and
$PREFIX/lib/clisp/full representing a minimal and fully featured
image, respectively. CLISP includes a ``linkkit'' mechanism by which
new linking sets can be constructed based on adding material to existing
ones.)

Anyway, the packaged CLISP wants to link in -lsigsegv which it expects
to find in /usr/local/libsigsegv-cygin/lib.  It's an external piece,
not part of the linking set.  This reference is found
in the makevars file of both the base and full linking set:
/usr/lib/clisp/{base,full}/makevars.

The very location of the reference is fishy in itself since a package
unstalled in /usr shouldn't refer to /usr/local stuff!

It looks like the package was built against a locally installed
libsigsegv, introducing a dependency which was then overlooked.

If you don't have libsigsegv, CLISP will build without it; it's not an
essential dependency. In that case the makevars files will end up with
-DNO_SIGGSEGV in CFLAGS, and there is no reference to -lsigsegv in the
LIBS variable.  In other words, rebuilding CLISP from scratch without
installing libsigsegv at all is one way to cure the problem. Another
fix would be to have a proper Cygwin package for this lib and make it a
dependency.

-- 
Meta-CVS: directory structure versioning; versioned symbolic links;
versioned execute permission; versioned property lists; easy branching
and merging and third party code tracking; all implemented over the
standard CVS command line client -- http://freshmeat.net/projects/mcvs


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]