Posted on 2005-08-18 15:25:32-07 by szabgab
Compilation error for version 1.09 on Solaris
Any idea ?
xstmp.o -o blib/arch/auto/DBD/SQLite/SQLite.so ld: fatal: symbol `XS_DBD__SQLite__db_create_aggregate' is multiply-defined: (file SQLite.o type=FUNC; file xstmp.o type=FUNC); ld: fatal: symbol `XS_DBD__SQLite__db_create_function' is multiply-defined: (file SQLite.o type=FUNC; file xstmp.o type=FUNC); ld: fatal: symbol `XS_DBD__SQLite__db_list_tables' is multiply-defined: (file SQLite.o type=FUNC; file xstmp.o type=FUNC); ld: fatal: symbol `XS_DBD__SQLite__db_last_insert_rowid' is multiply-defined: (file SQLite.o type=FUNC; file xstmp.o type=FUNC); ld: fatal: symbol `XS_DBD__SQLite__db_busy_timeout' is multiply-defined: (file SQLite.o type=FUNC; file xstmp.o type=FUNC); ld: fatal: File processing errors. No output written to blib/arch/auto/DBD/SQLite/SQLite.so collect2: ld returned 1 exit status
Using the following Perl version on Solaris:
Summary of my perl5 (revision 5.0 version 8 subversion 3) configuration: Platform: osname=solaris, osvers=2.6, archname=sun4-solaris-thread-multi uname='sunos sparky 5.6 generic_105181-35 sun4u sparc sunw,ultra-5_10 ' config_args='-des -Dcc=gcc -Dcf_by=ActiveState -Dcf_email=support@ActiveState.com -Uinstallusrb +inperl -Ud_sigsetjmp -Dusethreads -Duseithreads -Ulocincpth= -Uloclibpth= -Accflags=-DNO_HASH_SEED + -Dprefix=/export/home/sheer/activeperl5.8.3 -Dinc_version_list=5.8.1/$archname 5.8.1 5.8.0/$archn +ame 5.8.0 -Duselargefiles' hint=recommended, useposix=true, d_sigaction=define usethreads=define use5005threads=undef useithreads=define usemultiplicity=define useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='gcc', ccflags ='-D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -DNO_HASH_SEED -fno-strict-aliasing + -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O', cppflags='-D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -DNO_HASH_SEED -fno-strict-aliasing' ccversion='', gccversion='2.95.2 19991024 (release)', gccosandvers='solaris2.6' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='gcc', ldflags =' ' libpth=/usr/lib /usr/ccs/lib /usr/local/lib libs=-lsocket -lnsl -ldl -lm -lpthread -lc perllibs=-lsocket -lnsl -ldl -lm -lpthread -lc libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' ' cccdlflags='-fPIC', lddlflags='-G' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT Locally applied patches: ActivePerl Build 809 22218 Remove the caveat about detached threads crashing on Windows 22201 Avoid threads+win32 crash by freeing Perl interpreter slightly later 22169 Display 'out of memeory' errors using low-level I/O 22159 Upgrade to Time::Hires 1.55 22120 Make 'Configure -Dcf_by=...' work 22051 Upgrade to Time::HiRes 1.54 21540 Fix backward-compatibility issues in if.pm Built under solaris Compiled at Feb 3 2004 00:32:12 @INC: /export/home/sheer/activeperl5.8.3/lib/5.8.3/sun4-solaris-thread-multi /export/home/sheer/activeperl5.8.3/lib/5.8.3 /export/home/sheer/activeperl5.8.3/lib/site_perl/5.8.3/sun4-solaris-thread-multi /export/home/sheer/activeperl5.8.3/lib/site_perl/5.8.3 /export/home/sheer/activeperl5.8.3/lib/site_perl . root@netra159 [18:19] /tmp/Modules/DBD-SQLite-1.09 #
Direct Responses: 918 | Write a response
Posted on 2005-08-21 11:13:25-07 by szabgab in response to 911
Re: Compilation error for version 1.09 on Solaris
The error happens when compiling with gcc 3.1
One we replaced it with gcc 2.95.3 and reinstalled DBI, the error in DBD::SQLite also went away.
All this using ActivePerl 5.8.3
Direct Responses: Write a response
Perl Weekly newsletter
A free weekly newsletter for people who are busy to read all the blogs. click here to check it out.