[prev in list] [next in list] [prev in thread] [next in thread]
List: openssl-dev
Subject: Re: Failure to build shared libraries on Solaris7
From: Barry A Byrne <barry.byrne () cw ! com>
Date: 2002-02-28 11:26:16
[Download RAW message or body]
I solved this problem with
make do_solaris-shared
Sorry to make unnecessary waves.
(but the documentation could be a bit clearer.....)
Barry
----- Original Message -----
From: Barry A Byrne
To: openssl-bugs@openssl.org
Sent: Thursday, February 28, 2002 11:03 AM
Subject: Failure to build shared libraries on Solaris7
It seems that gcc 2.8.1 is passing the wrong arguments to LD to build shared libraries
for openssl-0-9-6a on Solaris 7
$ make report
Checking compiler...
ar: creating cctest.a
+ rm -f libcrypto.so
+ rm -f libcrypto.so.0
+ rm -f libcrypto.so
+ rm -f libcrypto.so.0.9.6
+ rm -f libssl.so.0
+ rm -f libssl.so
+ rm -f libssl.so.0.9.6
making all in crypto...
making all in crypto/md2...
making all in crypto/md4...
making all in crypto/md5...
making all in crypto/sha...
making all in crypto/mdc2...
making all in crypto/hmac...
making all in crypto/ripemd...
making all in crypto/des...
making all in crypto/rc2...
making all in crypto/rc4...
making all in crypto/rc5...
making all in crypto/bf...
making all in crypto/cast...
making all in crypto/bn...
making all in crypto/rsa...
making all in crypto/dsa...
making all in crypto/dh...
making all in crypto/dso...
making all in crypto/buffer...
making all in crypto/bio...
making all in crypto/stack...
making all in crypto/lhash...
making all in crypto/rand...
making all in crypto/err...
making all in crypto/objects...
making all in crypto/evp...
making all in crypto/asn1...
making all in crypto/pem...
making all in crypto/x509...
making all in crypto/x509v3...
making all in crypto/conf...
making all in crypto/txt_db...
making all in crypto/pkcs7...
making all in crypto/pkcs12...
making all in crypto/comp...
making all in ssl...
making all in rsaref...
making all in apps...
making all in test...
making all in tools...
+ rm -f libcrypto.so.0
+ rm -f libcrypto.so
+ rm -f libcrypto.so.0.9.6
libs='-L. '; for i in crypto; do \
( set -x; gcc -shared -o lib$i.so.0.9.6 \
-Wl,-S,-soname=lib$i.so.0.9.6 \
-Wl,--whole-archive lib$i.a \
-Wl,--no-whole-archive $libs -lsocket -lnsl -ldl -lc ) || exit 1; \
libs="$libs -l$i"; \
done
+ gcc -shared -o libcrypto.so.0.9.6 -Wl,-S,-soname=libcrypto.so.0.9.6 -Wl,--whol
e-archive libcrypto.a -Wl,--no-whole-archive -L. -lsocket -lnsl -ldl -lc
/usr/ccs/bin/ld: illegal option -- -
/usr/ccs/bin/ld: illegal option -- w
/usr/ccs/bin/ld: illegal option -- -
/usr/ccs/bin/ld: illegal option -- n
ld: warning: option -o appears more than once, first setting taken
usage: ld [-abd:e:f:h:il:mo:rstu:z:B:D:F:GI:L:M:N:Q:R:S:VY:] file(s)
[-a] create an absolute file
[-b] do not do special PIC relocations in a.out
[-d y|n] operate in dynamic|static mode
[-e sym] use `sym' as entry point address
[-f name] specify library for which this file is an auxiliary
filter
[-h name] use `name' as internal shared object identifier
[-i] ignore LD_LIBRARY_PATH setting
[-l x] search for libx.so or libx.a
[-m] print memory map
[-o outfile] name the output file `outfile'
[-r] create a relocatable object
[-s] strip any symbol and debugging information
[-t] do not warn of multiply defined symbols of different
sizes
[-u sym] create an undefined symbol `sym'
[-z absexec] when building an exectutable absolute symbols referenced
in dynamic objects are
promoted to the executable.
[-z now] mark object as requiring non-lazy binding
[-z defs|nodefs]
disallow|allow undefined symbols
[-z direct] specify 'direct' bindings for executable when run
[-z groupperm|nogroupperm]
enable|disable setting of GROUP permissions
on dynamic dependencies
[-z ignore|record]
ignore|record unused dynamic dependencies
[-z initfirst] mark object so the .init section
of this object is executed before the .init section
of other objects
[-z loadfltr] mark filter as requiring immediate loading of its
filtees at runtime
[-z interpose]
dynamic object is to be an `interposer' on
direct bindings
[-z lazyload|nolazyload]
enable|disable delayed loading of shared objects
[-z muldefs] allow multiply defined symbols
[-z nodelete] mark object as non-deletable
[-z nodlopen] mark object as non-dlopen()'able
[-z noversion] don't record any version sections
[-z origin] mark object as requiring $ORIGIN processing
[-z redlocsym] reduce local syms in .symtab to a minimum
[-z text] disallow output relocations against text
[-z textwarn] warn if there are relocations against text
[-z textoff] allow output relocations against text
[-z weakextract]
allow extraction of archive members to resolve weak
references
[-z allextract] extract all member files from archive files
[-z defaultextract]
extract member files from archive files
which resolve undefined or tentative symbols
[-z combreloc] combine multiple relocation sections
[-B dynamic|static]
search for shared libraries|archives
[-B group] relocate object from within group
[-B eliminate] eliminate unqualified global
symbols from the symbol table
[-B local] reduce unqualified global symbols to local
[-B reduce] process symbol reductions
[-B symbolic] bind external references to definitions when creating
shared objects
[-B direct] specify 'direct' bindings for executable when run
[-B translator] specify that this object is to act as a 'translator'
for an application bound with -Bdirect
[-D options] print diagnostic messages
[-F name] specify library for which this file is a filter
[-G] create a shared object
[-I interp] use `interp' as path name of interpreter
[-L path] search for libraries in directory `path'
[-M mapfile] use processing directives contained in `mapfile'
[-N file] create a dynamic dependency on `file'
[-Q y|n] do|do not place version information in output file
[-R path] specify a library search path to be used at run time
[-S name] specify a link-edit support library
[-V] print version information
[-Y P,dirlist] use `dirlist' as a default path when searching for
libraries
*** Error code 1
make: Fatal error: Command failed for target `do_gnu-shared'
OpenSSL self-test report:
OpenSSL version: 0.9.6b
Barry A Byrne
Cable and Wireless Global
[Attachment #3 (text/html)]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=windows-1252">
<META content="MSHTML 6.00.2600.0" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>I solved this problem with</FONT></DIV>
<DIV><FONT face=Arial size=2>make do_solaris-shared</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Sorry to make unnecessary waves.</FONT></DIV>
<DIV><FONT face=Arial size=2>(but the documentation could be a bit
clearer.....)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial
size=2> & \
nbsp; &nb \
sp;   \
; & \
nbsp; \
Barry</FONT></DIV>
<BLOCKQUOTE dir=ltr
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 \
2px solid; MARGIN-RIGHT: 0px"> <DIV style="FONT: 10pt arial">----- Original Message \
----- </DIV> <DIV
style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B>
<A title=barry.byrne@cw.com href="mailto:barry.byrne@cw.com">Barry A Byrne</A>
</DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A title=openssl-bugs@openssl.org
href="mailto:openssl-bugs@openssl.org">openssl-bugs@openssl.org</A> </DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Thursday, February 28, 2002 11:03
AM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> Failure to build shared
libraries on Solaris7</DIV>
<DIV><BR></DIV>
<DIV><FONT face=Arial size=2>It seems that gcc 2.8.1 is passing the
wrong arguments to LD to build shared libraries</FONT></DIV>
<DIV><FONT face=Arial size=2>for openssl-0-9-6a on Solaris
7 </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> $ make
report<BR>Checking compiler...<BR>ar: creating cctest.a<BR>+ rm -f
libcrypto.so<BR>+ rm -f libcrypto.so.0<BR>+ rm -f libcrypto.so<BR>+ rm -f
libcrypto.so.0.9.6<BR>+ rm -f libssl.so.0<BR>+ rm -f libssl.so<BR>+ rm -f
libssl.so.0.9.6<BR>making all in crypto...<BR>making all in
crypto/md2...<BR>making all in crypto/md4...<BR>making all in
crypto/md5...<BR>making all in crypto/sha...<BR>making all in
crypto/mdc2...<BR>making all in crypto/hmac...<BR>making all in
crypto/ripemd...<BR>making all in crypto/des...<BR>making all in
crypto/rc2...<BR>making all in crypto/rc4...<BR>making all in
crypto/rc5...<BR>making all in crypto/bf...<BR>making all in
crypto/cast...<BR>making all in crypto/bn...<BR>making all in
crypto/rsa...<BR>making all in crypto/dsa...<BR>making all in
crypto/dh...<BR>making all in crypto/dso...<BR>making all in
crypto/buffer...<BR>making all in crypto/bio...<BR>making all in
crypto/stack...<BR>making all in crypto/lhash...<BR>making all in
crypto/rand...<BR>making all in crypto/err...<BR>making all in
crypto/objects...<BR>making all in crypto/evp...<BR>making all in
crypto/asn1...<BR>making all in crypto/pem...<BR>making all in
crypto/x509...<BR>making all in crypto/x509v3...<BR>making all in
crypto/conf...<BR>making all in crypto/txt_db...<BR>making all in
crypto/pkcs7...<BR>making all in crypto/pkcs12...<BR>making all in
crypto/comp...<BR>making all in ssl...<BR>making all in rsaref...<BR>making
all in apps...<BR>making all in test...<BR>making all in tools...<BR>+ rm -f
libcrypto.so.0<BR>+ rm -f libcrypto.so<BR>+ rm -f
libcrypto.so.0.9.6<BR>libs='-L. '; for i in crypto; do \<BR>( set -x;
gcc -shared -o lib$i.so.0.9.6
\<BR> -Wl,-S,-soname=lib$i.so.0.9.6
\<BR> -Wl,--whole-archive lib$i.a
\<BR> -Wl,--no-whole-archive $libs
-lsocket -lnsl -ldl -lc ) || exit 1; \<BR>libs="$libs -l$i"; \<BR>done<BR>+
gcc -shared -o libcrypto.so.0.9.6 -Wl,-S,-soname=libcrypto.so.0.9.6
-Wl,--whol<BR>e-archive libcrypto.a -Wl,--no-whole-archive -L. -lsocket -lnsl
-ldl -lc<BR>/usr/ccs/bin/ld: illegal option -- -<BR>/usr/ccs/bin/ld: illegal
option -- w<BR>/usr/ccs/bin/ld: illegal option -- -<BR>/usr/ccs/bin/ld:
illegal option -- n<BR>ld: warning: option -o appears more than once, first
setting taken<BR>usage: ld [-abd:e:f:h:il:mo:rstu:z:B:D:F:GI:L:M:N:Q:R:S:VY:]
file(s)<BR>
[-a] create
an absolute file<BR>
[-b] do not
do special PIC relocations in
a.out<BR> [-d
y|n] operate in dynamic|static
mode<BR> [-e
sym] use `sym' as entry point
address<BR> [-f
name] specify library for which this file
is an
auxiliary<BR> \
filter<BR> [-h
name] use `name' as internal shared object
identifier<BR>
[-i] ignore
LD_LIBRARY_PATH setting<BR> [-l
x] search for libx.so or
libx.a<BR>
[-m] print
memory map<BR> [-o
outfile] name the output file
`outfile'<BR>
[-r] create
a relocatable object<BR>
[-s] strip
any symbol and debugging
information<BR>
[-t] do not
warn of multiply defined symbols of
different<BR> \
sizes<BR> [-u
sym] create an undefined symbol
`sym'<BR> [-z
absexec] when building an exectutable absolute symbols
referenced<BR> in dynamic objects are<BR>promoted to the
executable.<BR> [-z
now] mark object as requiring
non-lazy binding<BR> [-z
defs|nodefs]<BR> \
disallow|allow undefined symbols<BR>
[-z direct] specify 'direct' bindings for executable
when run<BR> [-z
groupperm|nogroupperm]<BR> \
enable|disable setting of GROUP
permissions<BR> \
on dynamic dependencies<BR> [-z
ignore|record]<BR> \
ignore|record unused dynamic
dependencies<BR> [-z
initfirst] mark object so the .init
section<BR> \
of this object is executed before the .init
section<BR> \
of other objects<BR> [-z
loadfltr] mark filter as requiring immediate loading of
its<BR> \
filtees at runtime<BR> [-z
interpose]<BR> \
dynamic object is to be an `interposer'
on<BR> \
direct bindings<BR> [-z
lazyload|nolazyload]<BR> \
enable|disable delayed loading of shared
objects<BR> [-z
muldefs] allow multiply defined
symbols<BR> [-z
nodelete] mark object as
non-deletable<BR> [-z
nodlopen] mark object as
non-dlopen()'able<BR> [-z
noversion] don't record any version
sections<BR> [-z
origin] mark object as requiring $ORIGIN
processing<BR> [-z redlocsym]
reduce local syms in .symtab to a
minimum<BR> [-z
text] disallow output relocations against
text<BR> [-z textwarn]
warn if there are relocations against
text<BR> [-z
textoff] allow output relocations against
text<BR> [-z
weakextract]<BR> \
allow extraction of archive members to resolve
weak<BR> \
references<BR> [-z allextract]
extract all member files from archive
files<BR> [-z
defaultextract]<BR> \
extract member files from archive
files<BR> \
which resolve undefined or tentative
symbols<BR> [-z combreloc]
combine multiple relocation
sections<BR> [-B
dynamic|static]<BR> \
search for shared
libraries|archives<BR> [-B
group] relocate object from within
group<BR> [-B eliminate]
eliminate unqualified
global<BR> \
symbols from the symbol table<BR>
[-B local] reduce unqualified global symbols to
local<BR> [-B
reduce] process symbol
reductions<BR> [-B
symbolic] bind external references to definitions when
creating<BR> \
shared objects<BR> [-B
direct] specify 'direct' bindings for executable when
run<BR> [-B translator] specify that
this object is to act as a
'translator'<BR> \
for an application bound with
-Bdirect<BR> [-D
options] print diagnostic
messages<BR> [-F
name] specify library for which this file
is a filter<BR>
[-G] create
a shared object<BR> [-I
interp] use `interp' as path name of
interpreter<BR> [-L
path] search for libraries in directory
`path'<BR> [-M
mapfile] use processing directives contained in
`mapfile'<BR> [-N
file] create a dynamic dependency on
`file'<BR> [-Q
y|n] do|do not place version
information in output file<BR> [-R
path] specify a library search path to be
used at run time<BR> [-S
name] specify a link-edit support
library<BR>
[-V] print
version information<BR> [-Y
P,dirlist] use `dirlist' as a default path when searching
for<BR> \
libraries<BR>*** Error code 1<BR>make: Fatal error: Command failed for target
`do_gnu-shared'<BR>OpenSSL self-test report:<BR>OpenSSL version:
0.9.6b<BR></DIV>
<DIV></FONT><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial
size=2>   \
; & \
nbsp; \
Barry A Byrne</FONT></DIV>
<DIV><FONT face=Arial size=2>Cable and Wireless
Global</FONT></DIV></BLOCKQUOTE></BODY></HTML>
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List openssl-dev@openssl.org
Automated List Manager majordomo@openssl.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic