Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Jun 2000 01:39:42 +0900
From:      FUJISHIMA Satsuki <k5@cheerful.com>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/19562: emulators/wine should be linked with -rpath
Message-ID:  <864s6doj3l.wl@cheerful.com>

next in thread | raw e-mail | index | archive | help

>Number:         19562
>Category:       ports
>Synopsis:       wine should be linked with -rpath
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 28 10:10:02 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     FUJISHIMA Satsuki
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
N/A
>Environment:

	Ports-current which installs wine libs under ${PREFIX}/lib/wine

>Description:

	Wine binaries(wine and winedbg actually) doesn't run after
	system reboot because they don't know where shared libraries
	installed. ELF binaries should be linked with -rpath to tell
	them the place of sharelibs that were installed to
	non-standard place. (A kind of PURE ELF system doesn't have
	ldconfig)

>How-To-Repeat:

(i) install wine
# cd /usr/ports/emulators/wine && make install
$ wine
<< It works here >>

(ii) then reboot or ldconfig to default paths
# shutdown -r now
or
# ldconfig /usr/lib/compat /usr/X11R6/lib /usr/local/lib
# ldconfig -r|grep wine
<< nothing found >>
# ldd /usr/local/bin/wine
/usr/local/bin/wine:
        libwine.so => not found (0x0)
        libncurses.so.5 => /usr/lib/libncurses.so.5 (0x28065000)
        libxpg4.so.3 => /usr/lib/libxpg4.so.3 (0x280a5000)
        libm.so.2 => /usr/lib/libm.so.2 (0x280a7000)
        libutil.so.3 => /usr/lib/libutil.so.3 (0x280c3000)
        libc.so.4 => /usr/lib/libc.so.4 (0x280cd000)
<< It no longer works >>

(iii) with patch below
# cd /usr/ports/emulators/wine && patch < THISMAIL && make install
# ldconfig /usr/lib/compat /usr/X11R6/lib /usr/local/lib
# ldconfig -r|grep wine
<< nothing found of cource >>
# ldd /usr/local/bin/wine
/usr/local/bin/wine:
        libwine.so => /usr/local/lib/wine/libwine.so (0x28065000)
        libncurses.so.5 => /usr/lib/libncurses.so.5 (0x282ad000)
        libxpg4.so.3 => /usr/lib/libxpg4.so.3 (0x282ed000)
        libm.so.2 => /usr/lib/libm.so.2 (0x282ef000)
        libutil.so.3 => /usr/lib/libutil.so.3 (0x2830b000)
        libc.so.4 => /usr/lib/libc.so.4 (0x28315000)
<< /usr/local/lib/wine is hardcoded to ELF binary >>

>Fix:

Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/emulators/wine/Makefile,v
retrieving revision 1.85
diff -u -r1.85 Makefile
--- Makefile	2000/06/25 21:20:00	1.85
+++ Makefile	2000/06/28 16:34:31
@@ -22,6 +22,7 @@
 
 WRKSRC=		${WRKDIR}/wine-${PORTVERSION:S/.//g}
 GNU_CONFIGURE=	yes
+CONFIGURE_ENV=	LIBS=-Wl,-rpath,${PREFIX}/lib/wine
 INSTALLS_SHLIB=	yes
 LDCONFIG_DIRS=	%%PREFIX%%/lib/wine
 MAN1=		wine.1


>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?864s6doj3l.wl>