Re: Make problem on Solaris 2.8
>Yep. I *think* a space is necessary after the R, but could be wrong. Not on Solaris. We'll see about others that pop up. >Does that make it into the invocations done within configure? ... Probably not (I'll have to dig into that a bit deeper). For now I've just added it for the Amanda binaries. At least it doesn't seem to have broken anything (yet :-). John R. Jackson, Technical Software Specialist, [EMAIL PROTECTED]
Re: Make problem on Solaris 2.8
>OSF1... er. Digital Unix... er Tru64 Unix... well *whatever* they call it >now. Can you run config.guess (from any GNU package) and send me the string so I know what to add to the switch statement? >Marc Mengel <[EMAIL PROTECTED]> John R. Jackson, Technical Software Specialist, [EMAIL PROTECTED]
Re: Make problem on Solaris 2.8
On Thu, 21 Mar 2002, John R. Jackson wrote: > Are there any other OS's that need "-R"? OSF1... er. Digital Unix... er Tru64 Unix... well *whatever* they call it now. - Marc Mengel <[EMAIL PROTECTED]>
Re: Make problem on Solaris 2.8
>But now that you mention it, I suspect that >for Solaris we should add "-R$dir" in addition to "-L$dir". Right? Yep. I *think* a space is necessary after the R, but could be wrong. >Not long ago I discovered Amanda had a --with-libraries option that >took a list of directories and stuck them on the load lines with "-L" Does that make it into the invocations done within configure? I find that feature tests, like finding jpeg/gtk/imlib usually fail for me because configure finds the libs and links with them, but doesn't link with -R, so the resultant test executable doesn't run.
Re: Make problem on Solaris 2.8
>This is why linking with -R is the better answer. ... Absolutely. LD_LIBRARY_PATH has a lot of really evil side effects and should be an absolute last resort. >And, of course, most or all instances of 'configure' that I encounter >fail completely ... That's interesting. Not long ago I discovered Amanda had a --with-libraries option that took a list of directories and stuck them on the load lines with "-L" (it also has a --with-includes along the same line). I was kind of happy because this was easier than what I had been doing (via an LD_FLAGS environment variable, as I recall). Since I didn't have any shared libraries in the extra areas, I didn't really think about it much. But now that you mention it, I suspect that for Solaris we should add "-R$dir" in addition to "-L$dir". Right? Are there any other OS's that need "-R"? John R. Jackson, Technical Software Specialist, [EMAIL PROTECTED]
Re: Make problem on Solaris 2.8
I can only advise you from Solaris side. you can issue `ldd amanda_binary_name` on solaris, and see which library it's linking. Then check and make sure all the library files exist in the location it specifies. Mark - Original Message - From: "Mary Tan" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, March 20, 2002 6:45 PM Subject: Re: Make problem on Solaris 2.8 > > Thank you all for the advice, I got through make successfully after setting > LD_LIBRARY_PATH. > > > However, after I've installed Amanda, there's a new problem. When I try to > run any amanda executables, I get the following error: > > $ amlabel DailySet1 DailySet1-001 > ld.so.1: amlabel: fatal: libreadline.so.4: open failed: No such file or > directory > Killed > > I've already installed ReadLine-4.2 and make sure it's in LD_LIBRARY_PATH. > I'm at a lost as to where else I should be looking. > > Any help is appreciated. > > > > > > > "Mark Lin" > > v.com> cc: > Subject: Re: Make problem on Solaris 2.8 > 03/19/02 01:05 > PM > > > > > > > Get ReadLine-4.2 from www.sunfreeware.com or if you already installed it, > make sure its lib is in the path of LD_LIBRARY_PATH. > > Mark > > - Original Message - > From: "Mary Tan" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Tuesday, March 19, 2002 3:05 PM > Subject: Make problem on Solaris 2.8 > > > > Hi all: > > > > I'm trying to run make for Amanda 2.4.2p2 on a Solaris 2.8 SPARC server > > with the following configure options: > > > > ./configure --with-user=amanda --with-group=amanda > > > > During the make process, the following error occurs. Here's the tail end > > of the error message: > > > > rm -f genversion.h genversion.h.new > > echo '#define CC "gcc"' > genversion.h.new > > echo '#define BUILT_DATE "'`date`'"' >> genversion.h.new > > echo '#define BUILT_MACH "'`uname -a || echo UNKNOWN HOST`'"' >> > > genversion.h.new > > mv genversion.h.new genversion.h > > gcc -DHAVE_CONFIG_H -I. -I. -I../config -I./../regex-src > > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > > -D_FILE_OFFSET_BITS=64 -g -O2 -c genversion.c > > gcc -DHAVE_CONFIG_H -I. -I. -I../config -I./../regex-src > > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > > -D_FILE_OFFSET_BITS=64 -g -O2 -c versuff.c > > /bin/sh ../libtool --mode=link gcc -D_LARGEFILE_SOURCE > > -D_FILE_OFFSET_BITS=64 -g -O2 -o genversion genversion.o versuff.o > > alloc.o debug.o error.o util.o file.o -lgen -lm -lreadline > > -ltermcap -lsocket -lnsl -lintl > > mkdir .libs > > gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -o genversion > > genversion.o versuff.o alloc.o debug.o error.o util.o file.o -lgen -lm > > -lreadline -ltermcap -lsocket -lnsl -lintl > > rm -f version.c > > ./genversion > version.c > > ld.so.1: ./genversion: fatal: libreadline.so.4: open failed: No such file > > or directory > > *** Error code 137 > > make: Fatal error: Command failed for target `version.c' > > Current working directory /home/amanda/amanda-2.4.2p2/common-src > > *** Error code 1 > > make: Fatal error: Command failed for target `all-recursive' > > > > > > Any guidance will be greatly appreciated. =) > > > > > > > > > >
Re: Make problem on Solaris 2.8
On Wed, Mar 20, 2002 at 04:56:00PM -0800, Anthony A. D. Talltree wrote: > >Thank you all for the advice, I got through make successfully after setting > >LD_LIBRARY_PATH. > > >However, after I've installed Amanda, there's a new problem. When I try > >to run any amanda executables, I get the following error: > > >$ amlabel DailySet1 DailySet1-001 > >ld.so.1: amlabel: fatal: libreadline.so.4: open failed: No such file or > >directory The environment for LD_LIBRARY_PATH was set during the build, but is not retained by the executables. It has to be reset in the runtime environment. If set in the .profile of the this would allow amlabel to succeed from the command line. However, amcheck/amdump run from a crontab entry does not process the .profile. They don't use readline so this specific library may not cause a problem. > This is why linking with -R is the better answer. The executables then > know where to find the dynamic libs without LD_LIBRARY_PATH or > LD_RUN_PATH. Absolutely! > One way to do this might be > > unsetenv LD_LIBRARY_PATH > setenv LD_FLAGS "-R /usr/local/lib" Assuming "MT" is using c-shell :) > > before running configure, presuming that readline is in /usr/local/lib. > Use ldd on completed binaries to ensure that they can find the libs. An alternative for Solaris users (eg "MT") is the ld.config file. This is created and maintained by the crle command. It specifies what directories the dynamic linker searches for its libraries, i.e., the default LD_LIBRARY_PATH. If the contents of /usr/local/lib are trusted, this directory could be added to the default dirs in ld.config. jl -- Jon H. LaBadie [EMAIL PROTECTED] JG Computing 4455 Province Line Road(609) 252-0159 Princeton, NJ 08540-4322 (609) 683-7220 (fax)
Re: Make problem on Solaris 2.8
>Thank you all for the advice, I got through make successfully after setting >LD_LIBRARY_PATH. >However, after I've installed Amanda, there's a new problem. When I try >to run any amanda executables, I get the following error: >$ amlabel DailySet1 DailySet1-001 >ld.so.1: amlabel: fatal: libreadline.so.4: open failed: No such file or >directory This is why linking with -R is the better answer. The executables then know where to find the dynamic libs without LD_LIBRARY_PATH or LD_RUN_PATH. And, of course, most or all instances of 'configure' that I encounter fail completely and need to be manually hacked, either because whoever writes/generates the things is solipsistic wrt SunOS 5, or incorrectly believes that LD_LIBRARY_PATH is the way to go. IIRC ld.so came up with -R back around 5.4 or 5.5; I don't remember exactly. One way to do this might be unsetenv LD_LIBRARY_PATH setenv LD_FLAGS "-R /usr/local/lib" before running configure, presuming that readline is in /usr/local/lib. Use ldd on completed binaries to ensure that they can find the libs.
Re: Make problem on Solaris 2.8
Thank you all for the advice, I got through make successfully after setting LD_LIBRARY_PATH. However, after I've installed Amanda, there's a new problem. When I try to run any amanda executables, I get the following error: $ amlabel DailySet1 DailySet1-001 ld.so.1: amlabel: fatal: libreadline.so.4: open failed: No such file or directory Killed I've already installed ReadLine-4.2 and make sure it's in LD_LIBRARY_PATH. I'm at a lost as to where else I should be looking. Any help is appreciated. "Mark Lin" v.com> cc: Subject: Re: Make problem on Solaris 2.8 03/19/02 01:05 PM Get ReadLine-4.2 from www.sunfreeware.com or if you already installed it, make sure its lib is in the path of LD_LIBRARY_PATH. Mark - Original Message - From: "Mary Tan" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, March 19, 2002 3:05 PM Subject: Make problem on Solaris 2.8 > Hi all: > > I'm trying to run make for Amanda 2.4.2p2 on a Solaris 2.8 SPARC server > with the following configure options: > > ./configure --with-user=amanda --with-group=amanda > > During the make process, the following error occurs. Here's the tail end > of the error message: > > rm -f genversion.h genversion.h.new > echo '#define CC "gcc"' > genversion.h.new > echo '#define BUILT_DATE "'`date`'"' >> genversion.h.new > echo '#define BUILT_MACH "'`uname -a || echo UNKNOWN HOST`'"' >> > genversion.h.new > mv genversion.h.new genversion.h > gcc -DHAVE_CONFIG_H -I. -I. -I../config -I./../regex-src > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -g -O2 -c genversion.c > gcc -DHAVE_CONFIG_H -I. -I. -I../config -I./../regex-src > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -g -O2 -c versuff.c > /bin/sh ../libtool --mode=link gcc -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -g -O2 -o genversion genversion.o versuff.o > alloc.o debug.o error.o util.o file.o -lgen -lm -lreadline > -ltermcap -lsocket -lnsl -lintl > mkdir .libs > gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -o genversion > genversion.o versuff.o alloc.o debug.o error.o util.o file.o -lgen -lm > -lreadline -ltermcap -lsocket -lnsl -lintl > rm -f version.c > ./genversion > version.c > ld.so.1: ./genversion: fatal: libreadline.so.4: open failed: No such file > or directory > *** Error code 137 > make: Fatal error: Command failed for target `version.c' > Current working directory /home/amanda/amanda-2.4.2p2/common-src > *** Error code 1 > make: Fatal error: Command failed for target `all-recursive' > > > Any guidance will be greatly appreciated. =) > >
Re: Make problem on Solaris 2.8
I suspect that you've got an ld.so path issue. The best way to deal with that is to have the linking invocations of gcc specify -R /where/ever/your/libs/are, with LD_LIBRARY_PATH unset.
Make problem on Solaris 2.8
Hi all: I'm trying to run make for Amanda 2.4.2p2 on a Solaris 2.8 SPARC server with the following configure options: ./configure --with-user=amanda --with-group=amanda During the make process, the following error occurs. Here's the tail end of the error message: rm -f genversion.h genversion.h.new echo '#define CC "gcc"' > genversion.h.new echo '#define BUILT_DATE "'`date`'"' >> genversion.h.new echo '#define BUILT_MACH "'`uname -a || echo UNKNOWN HOST`'"' >> genversion.h.new mv genversion.h.new genversion.h gcc -DHAVE_CONFIG_H -I. -I. -I../config -I./../regex-src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -c genversion.c gcc -DHAVE_CONFIG_H -I. -I. -I../config -I./../regex-src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -c versuff.c /bin/sh ../libtool --mode=link gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -o genversion genversion.o versuff.o alloc.o debug.o error.o util.o file.o -lgen -lm -lreadline -ltermcap -lsocket -lnsl -lintl mkdir .libs gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -o genversion genversion.o versuff.o alloc.o debug.o error.o util.o file.o -lgen -lm -lreadline -ltermcap -lsocket -lnsl -lintl rm -f version.c ./genversion > version.c ld.so.1: ./genversion: fatal: libreadline.so.4: open failed: No such file or directory *** Error code 137 make: Fatal error: Command failed for target `version.c' Current working directory /home/amanda/amanda-2.4.2p2/common-src *** Error code 1 make: Fatal error: Command failed for target `all-recursive' Any guidance will be greatly appreciated. =)