pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/46478: www/curl does not compile on Solaris/sparc with compiler not configured with devel/libelf



The following reply was made to PR pkg/46478; it has been noted by GNATS.

From: =?ISO-8859-1?Q?J=F6rn_Clausen?= <joern.clausen%uni-bielefeld.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: pkg-manager%NetBSD.org@localhost, gnats-admin%NetBSD.org@localhost, 
pkgsrc-bugs%NetBSD.org@localhost
Subject: Re: pkg/46478: www/curl does not compile on Solaris/sparc with
 compiler not configured with devel/libelf
Date: Fri, 01 Jun 2012 16:16:38 +0200

 I did some more tests, finally:
 
 I can compile the test from the configure script stand alone without 
 problems. If I truss the complete compile run, I see that the system 
 libelf is used twice:
 
 20943:  open("/lib/libelf.so", O_RDONLY)                = 4
 ...
 20947:  open("/lib/libelf.so.1", O_RDONLY)              = 3
 
 The first process is the assembler (/usr/ccs/bin/as), the second one the 
 linker (/usr/ccs/bin/ld). When I repeat this with LD_LIBRARY_PATH set to 
 pkgsrc's library directory, this happens:
 
 20856:  open("/usr/pkgsrc/20120411/lib/libelf.so", O_RDONLY) = 4
 ...
 20860:  open("/lib/libelf.so.1", O_RDONLY)              = 3
 
 I.e. the assembler uses pkgsrc's libelf, the linker still the native 
 one. Apart from the fact, that ELF should be ELF and the code generated 
 with one libelf should probably still be readable by the other, this 
 seems to be root of the problem.
 
 Note that the assembler uses the library without version number, the 
 linker requests a specific version of the library. Note further, that 
 pkgsrc's libelf only provides the suffixes .0 and .0.0.0.
 
 So, why is this only a problem on sparc but not on i86? It turns out, 
 that the assembler on i86 does not read libelf at all, so it can't 
 switch between the native and the pkgsrc version.
 
 One workaround might be to add a symlink libelf.so.1 pointing to 
 pkgsrc's version of libelf, so that one is always used. But maybe 
 someone has a better idea.
 
 -- 
   Jörn Clausen                             
joern.clausen%uni-bielefeld.de@localhost
   Hochschulrechenzentrum                 http://www.uni-bielefeld.de/hrz/
   Universität Bielefeld
 


Home | Main Index | Thread Index | Old Index