Skip Menu |

This queue is for tickets about the Crypt-OpenSSL-Random CPAN distribution.

Report information
The Basics
Id: 74411
Status: open
Priority: 0/
Queue: Crypt-OpenSSL-Random

People
Owner: Nobody in particular
Requestors: shmuel+bitcard.org [...] patriot.net
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: (no value)
Fixed in: (no value)



Subject: Problem installing Crypt-OpenSSL-Random under OS/2
Multiple 'weakld: error: Unresolved symbol (UNDEF)' warnings: boot_Crypt__OpenSSL__Random _RAND_status _RAND_egd _RAND_seed _RAND_bytes causing the linker to fail on Error 1. I suspect that I need to download an openssl package, but there's nothing in the readme - in fact, there isn't a readme.
Subject: 4F1DD19E.OUT
Download 4F1DD19E.OUT
application/octet-stream 34.9k

Message body not shown because it is not plain text.

From: shmuel+bitcard.org [...] patriot.net
On Wed Jan 25 23:58:17 2012, shmuel wrote: Show quoted text
> Multiple 'weakld: error: Unresolved symbol (UNDEF)' warnings: > > boot_Crypt__OpenSSL__Random > _RAND_status > _RAND_egd > _RAND_seed > _RAND_bytes > > causing the linker to fail on Error 1. I suspect that I need to download > an openssl package, but there's nothing in the readme - in fact, there > isn't a readme.
After adding -lz to LIBS in MAKEFILE.PL, it finds /extras/lib/libz.a; I don't know whether that is necessary for systems other than OS/2. I also don't know why it doesn't find Q:\usr\lib\libsocket.a, although that should be harmless. With the addion of -lz I am left with one error message in the build: [h:\vendors\cpan\crypt-openssl-random-0.04]U:\extras\bin\make Skip blib/lib/Crypt/OpenSSL/Random.pm (unchanged) gcc -c -DDOSISH -DOS2=2 -DEMBED -I. -fno-strict-aliasing -pipe -I/usr/local/in clude -O2 -fomit-frame-pointer -falign-loops=2 -falign-jumps=2 -falign-functions =2 -s -DVERSION=\"0.04\" -DXS_VERSION=\"0.04\" -Zdll "-IQ:/PROGRAMS/PERL/lib/5 .10.0/os2/CORE" Random.c In file included from Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/perl.h:2495, from Random.xs:2: Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/os2ish.h:30:1: warning: "PERL_DONT_CREATE_G VSV" redefined In file included from Random.xs:2: Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/perl.h:932:1: warning: this is the location of the previous definition Running Mkbootstrap for Crypt::OpenSSL::Random () Q:/PROGRAMS/PERL/bin/perl.exe -MExtUtils::Command -e 'chmod' -- 644 Random.bs Q:/PROGRAMS/PERL/bin/perl.exe "-IQ:/PROGRAMS/PERL/lib/5.10.0/os2" "-IQ:/PROGRAMS /PERL/lib/5.10.0" -e 'use ExtUtils::Mksymlists; \ Mksymlists("NAME" => "Crypt::OpenSSL::Random", "DLBASE" => "RandomBQ", "VER SION" => "0.04", "DISTNAME" => "Crypt-OpenSSL-Random", "INSTALLDIRS" => "site", "DL_FUNCS" => { }, "FUNCLIST" => [], "IMPORTS" => { }, "DL_VARS" => []);' Q:/PROGRAMS/PERL/bin/perl.exe -MExtUtils::Command -e 'rm_f' -- blib/arch/auto/Cr ypt/OpenSSL/Random/RandomBQ.dll gcc -Zdll -Zomf Random.o -O2 -fomit-frame-pointer -falign-loops=2 -falign-jump s=2 -falign-functions=2 -s -o blib/arch/auto/Crypt/OpenSSL/Random/RandomBQ.dll \ Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/libperl.a -lssl -lcrypto -lz Q:/P ROGRAMS/PERL/lib/5.10.0/os2/CORE/libperl_override.a Random.def \ || ( Q:/PROGRAMS/PERL/bin/perl.exe -MExtUtils::Command -e 'rm_f' -- bl ib/arch/auto/Crypt/OpenSSL/Random/RandomBQ.dll && sh -c false ) weakld: error: Unresolved symbol (UNDEF EXPORT) 'boot_Crypt__OpenSSL__Random'. weakld: info: The symbol is referenced by: H:/Vendors/CPAN/Crypt-OpenSSL-Random-0.04/Random.def Ignoring unresolved externals reported from weak prelinker. ILink : error LNK2022: boot_Crypt__OpenSSL__Random (alias boot_Crypt__OpenSSL__R andom) : export undefined There was 1 error detected make.exe: *** [blib/arch/auto/Crypt/OpenSSL/Random/RandomBQ.dll] Error 1 Dave Yeo <dave.r.yeo@gmail.com> in comp.os.os2.apps (Message-ID: <4f41c37b$0$2595$c3e8da3$f5af001f@news.astraweb.com>) states that h:\Vendors\CPAN\Crypt-OpenSSL-Random-0.04\Random.def should have a leading underscore in EXPORTS boot_Crypt__OpenSSL__Random A test suggests that he is correct; the build completes and a 5 tests succeed. Ruediger Ihle (Message-ID: <Bd1D8ggkpXsj-pn2-RGHsHdy5Kvoh@Tobias>) staes that the build should have picked up Q:\usr\local\OPENSSL\lib\libssl_dll.a rather than Q:\usr\local\OPENSSL\lib\libssl.a
On Mon Feb 20 19:12:28 2012, shmuel wrote: Show quoted text
> On Wed Jan 25 23:58:17 2012, shmuel wrote:
> > Multiple 'weakld: error: Unresolved symbol (UNDEF)' warnings: > > > > boot_Crypt__OpenSSL__Random > > _RAND_status > > _RAND_egd > > _RAND_seed > > _RAND_bytes > > > > causing the linker to fail on Error 1. I suspect that I need to download > > an openssl package, but there's nothing in the readme - in fact, there > > isn't a readme.
> > After adding -lz to LIBS in MAKEFILE.PL, it finds /extras/lib/libz.a; I > don't know whether that is necessary for systems other than OS/2. I also > don't know why it doesn't find Q:\usr\lib\libsocket.a, although that > should be harmless. > > With the addion of -lz I am left with one error message in the build: > > > [h:\vendors\cpan\crypt-openssl-random-0.04]U:\extras\bin\make > Skip blib/lib/Crypt/OpenSSL/Random.pm (unchanged) > gcc -c -DDOSISH -DOS2=2 -DEMBED -I. -fno-strict-aliasing -pipe > -I/usr/local/in > clude -O2 -fomit-frame-pointer -falign-loops=2 -falign-jumps=2 > -falign-functions > =2 -s -DVERSION=\"0.04\" -DXS_VERSION=\"0.04\" -Zdll > "-IQ:/PROGRAMS/PERL/lib/5 > .10.0/os2/CORE" Random.c > In file included from Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/perl.h:2495, > from Random.xs:2: > Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/os2ish.h:30:1: warning: > "PERL_DONT_CREATE_G > VSV" redefined > In file included from Random.xs:2: > Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/perl.h:932:1: warning: this is the > location > of the previous definition > Running Mkbootstrap for Crypt::OpenSSL::Random () > Q:/PROGRAMS/PERL/bin/perl.exe -MExtUtils::Command -e 'chmod' -- 644 > Random.bs > Q:/PROGRAMS/PERL/bin/perl.exe "-IQ:/PROGRAMS/PERL/lib/5.10.0/os2" > "-IQ:/PROGRAMS > /PERL/lib/5.10.0" -e 'use ExtUtils::Mksymlists; \ > Mksymlists("NAME" => "Crypt::OpenSSL::Random", "DLBASE" => > "RandomBQ", "VER > SION" => "0.04", "DISTNAME" => "Crypt-OpenSSL-Random", "INSTALLDIRS" => > "site", > "DL_FUNCS" => { }, "FUNCLIST" => [], "IMPORTS" => { }, "DL_VARS" => []);' > Q:/PROGRAMS/PERL/bin/perl.exe -MExtUtils::Command -e 'rm_f' -- > blib/arch/auto/Cr > ypt/OpenSSL/Random/RandomBQ.dll > gcc -Zdll -Zomf Random.o -O2 -fomit-frame-pointer -falign-loops=2 > -falign-jump > s=2 -falign-functions=2 -s -o > blib/arch/auto/Crypt/OpenSSL/Random/RandomBQ.dll > \ > Q:/PROGRAMS/PERL/lib/5.10.0/os2/CORE/libperl.a -lssl -lcrypto > -lz Q:/P > ROGRAMS/PERL/lib/5.10.0/os2/CORE/libperl_override.a Random.def \ > || ( Q:/PROGRAMS/PERL/bin/perl.exe -MExtUtils::Command -e > 'rm_f' -- bl > ib/arch/auto/Crypt/OpenSSL/Random/RandomBQ.dll && sh -c false ) > weakld: error: Unresolved symbol (UNDEF EXPORT) > 'boot_Crypt__OpenSSL__Random'. > weakld: info: The symbol is referenced by: > H:/Vendors/CPAN/Crypt-OpenSSL-Random-0.04/Random.def > Ignoring unresolved externals reported from weak prelinker. > ILink : error LNK2022: boot_Crypt__OpenSSL__Random (alias > boot_Crypt__OpenSSL__R > andom) : export undefined > > There was 1 error detected > make.exe: *** [blib/arch/auto/Crypt/OpenSSL/Random/RandomBQ.dll] Error 1 > > > Dave Yeo <dave.r.yeo@gmail.com> in comp.os.os2.apps (Message-ID: > <4f41c37b$0$2595$c3e8da3$f5af001f@news.astraweb.com>) states that > h:\Vendors\CPAN\Crypt-OpenSSL-Random-0.04\Random.def should have a > leading underscore in > > EXPORTS > boot_Crypt__OpenSSL__Random > > A test suggests that he is correct; the build completes and a 5 tests > succeed. > > > Ruediger Ihle (Message-ID: <Bd1D8ggkpXsj-pn2-RGHsHdy5Kvoh@Tobias>) staes > that the build should have picked up > Q:\usr\local\OPENSSL\lib\libssl_dll.a rather than > Q:\usr\local\OPENSSL\lib\libssl.a >
I'm afraid I don't have a OS2 system to test, and the errors look like a EUMM building problem, either by missing the _ in the generated .def file, or by linking to the wrong library version (static, not the import lib). Please test the latest version, and try it with a os2 specific hints file to use the correct libs to link, as with MSWin32 -- Reini Urban