On Tue, Sep 19, 2006 at 08:10:49PM +0200, Ralf S. Engelschall wrote:
> On Tue, Sep 19, 2006, Adam D. Morley wrote:
>
> > [...]
> > Ah. At least I know my perl-dbi is broken:
>
> This should now be also fixed in OpenPKG-CURRENT. Please take the latest
> and greatest "perl-dbi" from there in the meantime.
Ok. I grabbed
perl-dbi-5.8.8-20060919.src.rpm
from ftp.openpkg.org in current/SRC
and built. I get:
[root perl-dbi]# /opt/openpkg/bin/perl -e 'use DBI; use DBD::SQLite;' Can't
load
'/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBD/SQLite/SQLite.so'
for module DBD::SQLite: ld.so.1: perl: fatal: relocation error: file
/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBD/SQLite/SQLite.so:
symbol sqlite3_version: referenced symbol not found at
/opt/openpkg/lib/perl/5.8.8/sun4-solaris/DynaLoader.pm line 230.
at -e line 1
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
But sqlite built fine (see attached log). Was there a second 0919 I was
supposed to use, or do I need to upgrade perl-openpkg too? I did
twiddle perl-dbi.spec so it wouldn't error on build:
--- perl-dbi.spec Tue Sep 19 11:07:38 2006
+++ ../perl-dbi.spec.new Tue Sep 19 12:01:02 2006
@@ -84,7 +84,7 @@
# build information
Prefix: %{l_prefix}
BuildRoot: %{l_buildroot}
-BuildPreReq: OpenPKG, openpkg >= 20040130, perl >= %{V_perl}, perl-openpkg >=
%{V_perl}-20040126
+BuildPreReq: OpenPKG, openpkg >= 20040130, perl >= %{V_perl}, perl-openpkg >=
%{V_perl}-2.20040126
PreReq: OpenPKG, openpkg >= 20040130, perl >= %{V_perl}
BuildPreReq: perl-module, perl-util, perl-net, perl-locale, perl-text
PreReq: perl-module, perl-util, perl-net, perl-locale, perl-text
--
adam
++ OpenPKG perl-openpkg 2.0.1 (03-Dec-2004)
++ determined RPM program: /opt/openpkg/libexec/openpkg/rpm (4.2.1)
++ determined Perl program: /opt/openpkg/bin/perl (5.8.8)
++ step 2: configure
++ configuring module via ExtUtils::MakeMaker environment
Checking installed SQLite version...
SQLite version must be at least 3.1.3. No header file at that
version or higher was found. Using the local version instead.
Checking if your kit is complete...
Looks good
Multiple copies of Driver.xst found in:
/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBI/
/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBI/ at
./Makefile.PL line 112
Using DBI 1.52 (for perl 5.008008 on sun4-solaris) installed in
/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBI/
Writing Makefile for DBD::SQLite
++ step 3: build
++ building module via ExtUtils::MakeMaker environment
cp lib/DBD/SQLite.pm blib/lib/DBD/SQLite.pm
/opt/openpkg/RPM/TMP/adam-perl-openpkg-perl-dbi/perl.sh -p -e
"s/~DRIVER~/SQLite/g"
/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBI/Driver.xst
> SQLite.xsi
/opt/openpkg/RPM/TMP/adam-perl-openpkg-perl-dbi/perl.sh
/opt/openpkg/lib/perl/5.8.8/ExtUtils/xsubpp -typemap
/opt/openpkg/lib/perl/5.8.8/ExtUtils/typemap SQLite.xs > SQLite.xsc && mv
SQLite.xsc SQLite.c
/opt/openpkg/bin/cc -c -I.
-I/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBI
-fno-strict-aliasing -pipe -Wdeclaration-after-statement
-I/opt/openpkg/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-DPERL_USE_SAFE_PUTENV -O2 -DVERSION=\"1.13\" -DXS_VERSION=\"1.13\" -fPIC
"-I/opt/openpkg/lib/perl/5.8.8/sun4-solaris/CORE" -DNDEBUG=1 -DSQLITE_PTR_SZ=4
-DHAVE_USLEEP=1 SQLite.c
/opt/openpkg/bin/cc -c -I.
-I/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBI
-fno-strict-aliasing -pipe -Wdeclaration-after-statement
-I/opt/openpkg/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-DPERL_USE_SAFE_PUTENV -O2 -DVERSION=\"1.13\" -DXS_VERSION=\"1.13\" -fPIC
"-I/opt/openpkg/lib/perl/5.8.8/sun4-solaris/CORE" -DNDEBUG=1 -DSQLITE_PTR_SZ=4
-DHAVE_USLEEP=1 dbdimp.c
Running Mkbootstrap for DBD::SQLite ()
chmod 644 SQLite.bs
rm -f blib/arch/auto/DBD/SQLite/SQLite.so
/opt/openpkg/bin/cc -Wl,-E -G -L/opt/openpkg/lib SQLite.o dbdimp.o -o
blib/arch/auto/DBD/SQLite/SQLite.so \
\
chmod 755 blib/arch/auto/DBD/SQLite/SQLite.so
cp SQLite.bs blib/arch/auto/DBD/SQLite/SQLite.bs
chmod 644 blib/arch/auto/DBD/SQLite/SQLite.bs
++ step 4: install
++ installing module via ExtUtils::MakeMaker environment
Installing
/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBD/SQLite/SQLite.so
Installing
/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBD/SQLite/SQLite.bs
Files found in blib/arch: installing files in blib/lib into architecture
dependent library tree
Installing
/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/DBD/SQLite.pm
Writing
/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto/DBD/SQLite/.packlist
++ cleaning up environment
+ /opt/openpkg/bin/perl-openpkg -F perl-openpkg-files fixate cleanup
++ OpenPKG perl-openpkg 2.0.1 (03-Dec-2004)
++ determined RPM program: /opt/openpkg/libexec/openpkg/rpm (4.2.1)
++ determined Perl program: /opt/openpkg/bin/perl (5.8.8)
++ step 5: fixate
++ step 6: cleanup
++ cleaning up environment
++ cat perl-openpkg-files
+ /opt/openpkg/lib/openpkg/rpmtool files -v -ofiles
-r/opt/openpkg/RPM/TMP/perl-dbi-5.8.8-root '%defattr(-,opkg,opkg)' /opt/openpkg
'%not %dir
{/opt/openpkg,/opt/openpkg/*,/opt/openpkg/etc/rc.d,/opt/openpkg/man/*}' '"%not'
%dir '/opt/openpkg/lib/perl"' '"%not' %dir
'/opt/openpkg/lib/perl/5.8.8/sun4-solaris/auto"' '"%not' %dir
'/opt/openpkg/lib/perl/5.8.8/sun4-solaris"' '"%not' %dir
'/opt/openpkg/lib/perl/5.8.8/auto"' '"%not' %dir '/opt/openpkg/lib/perl/5.8.8"'
'"%not' %dir '/opt/openpkg/lib/perl/site_perl"' '"%not' %dir
'/opt/openpkg/lib/perl/site_perl/5.8.8/sun4-solaris/auto"' '"%not' %dir
'/opt/openpkg/lib/perl/site_perl/5.8.8/sun4-solaris"' '"%not' %dir
'/opt/openpkg/lib/perl/site_perl/5.8.8/auto"' '"%not' %dir
'/opt/openpkg/lib/perl/site_perl/5.8.8"' '"%not' %dir
'/opt/openpkg/lib/perl/vendor_perl"' '"%not' %dir
'/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris/auto"' '"%not' %dir
'/opt/openpkg/lib/perl/vendor_perl/5.8.8/sun4-solaris"' '"%not' %dir
'/opt/openpkg/lib/perl/vendor_perl/5.8.8/auto"' '"%not' %dir
'/opt/openpkg/lib/perl/vendor_perl/5.8.8"'
rpmtool:files: pass 1 (preparation and syntactical expansions)
rpmtool:files: pass 2 (filesystem-based expansions)
rpmtool:files: pass 3 (duplication removal and cleanup)
+ exit 0
Processing files: perl-dbi-5.8.8-20060919