﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
1584	sysvinit 2.86 bug with regards to AMD64 / x86-64	Treshix@…	lfs-book@…	"Sysvinit fails to pass -lcrypt when linking sulogin if libcrypt.a exists not in
/usr/lib but in /usr/lib64.

this is due to a bug in the makefile, as it only checks for libcrypt in
/usr/lib. If you're compiling it to be a ELF 64bit binary, you need to link
against /usr/lib64, especially if you have disabled multilib as a number of
things currently insist on installing to lib64 directories without detecting
this unless manually told otherwise.

I'm not sure if this patch should be committed, however, in the event that
/usr/lib/libcrypt.a does not exist and /usr/lib64/libcrypt.a does, this should
handle things nicely.

If this is of use, drop me an email and let me know. If it is not, drop me an
email and let me know how to be of use. Thank you.

-JMD

Patch as follows:



--- src/Makefile        2005-06-24 23:59:58.000000000 -0600
+++ ../sysvinit-2.86/src/Makefile       2005-06-25 00:16:04.000000000 -0600
@@ -50,10 +50,12 @@
 MANDIR         = /usr/share/man
 
 # Additional libs for GNU libc.
-ifneq ($(wildcard /usr/lib/libcrypt.a),)
+# Also check /usr/lib64 as glibc regards this as a standard now.
+ifneq ($(wildcard /usr/lib/libcrypt.a) || $(wildcard /usr/lib64/libcrypt.a),)
 LCRYPT         = -lcrypt
 endif
 
+
 all:           $(BIN) $(SBIN) $(USRBIN)
 
 init:          init.o init_utmp.o"	defect	closed	lowest		Book	SVN	major	remind		
