This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: [Packaging bug] perl-5.10.1-5: Superfluous symlink for cygperl5_10.dll
- From: Reini Urban <rurban at x-ray dot at>
- To: cygwin at cygwin dot com
- Date: Sat, 18 Feb 2012 13:03:24 -0600
- Subject: Re: [Packaging bug] perl-5.10.1-5: Superfluous symlink for cygperl5_10.dll
- Authentication-results: mr.google.com; spf=pass (google.com: domain of reini.urban@gmail.com designates 10.152.122.74 as permitted sender) smtp.mail=reini.urban@gmail.com; dkim=pass header.i=reini.urban@gmail.com
- References: <7zfwe9xwls.fsf@vzell-de.de.oracle.com>
On Fri, Feb 17, 2012 at 10:17 AM, Dr. Volker Zell wrote:
> In the latest perl-5.10.1-5 there is a symlink
> ?/usr/lib/perl5/5.10/i686-cygwin/CORE/cygperl5_10.dll
> for
> ?/usr/bin/cygperl5_10.dll
>
> which breaks 'make check' when trying to run the testsuite for
> openldap when it's perl enabled.
This trick is needed to enable -Dlibperl=cygperl5_10.dll
for building XS extensions without going through the importlib.
This way the dll can be named as you wish, to enable multiple versions
and features (threaded/non-threaded, debug) of perl together.
> The libtool generated wrapper for slapd includes the following
> PATH statement:
PATH=:/usr/local/lib:/usr/local/bin:/usr/lib/perl5/5.10/i686-cygwin/CORE:/misc/src/release/openldap-2.4.29-1/build/libraries/libldap_r/.libs:/misc/src/release/openldap-2.4.29-1/build/libraries/liblber/.libs:$PATH
> So when the real slapd starts up it exits with exit code 127 because
> it finds the symlink for cygperl5_10.dll before the real one.
I see.
/usr/lib/perl5/5.10/i686-cygwin/CORE is wrong in PATH.
It only belongs to LIBPATH.
There are no binaries there to pickup.
> Shouldn't that symlink be there in the first place ?
> For now I removed it and the openldap test suite
> works again.
No, please remove /usr/lib/perl5/5.10/i686-cygwin/CORE from your path
in your Makefile. The symlink is needed to build perl extensions.
windows needs the dll to be in the path which is /usr/bin.
ld needs to link against the dll and expects it in
/usr/lib/perl5/5.10/i686-cygwin/CORE, hence the symlink, because ld
understands the symlink, windows not.
--
Reini Urban
http://cpanel.net/ ? http://www.perl-compiler.org/
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple