[Spread-users] Building 64-bit on Solaris 10 (x86_64)
Brian Carey
bcarey at jambomedia.com
Fri Nov 20 08:46:25 EST 2009
Hi all,
I've successfully built the 4.1.0 source in 32-bit mode, however, when
trying to build 64-bit binaries it fails. Below are my configure
options and errors from the build process (I can provide entire build
output if necessary, but for now I just included the blocks of errors).
I'm using the Sun GCC packages. Does anyone have any suggestions on
what i'm doing wrong? I see in previous mailing list posts people
mentioning building this 64-bit on Solaris so i'm assuming its
possible. Thanks in advance for any help you can provide.
GCC Specs
-----------------------
Reading specs from /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/specs
Configured with: /builds/sfw10-gate/usr/src/cmd/gcc/gcc-3.4.3/configure
--prefix=/usr/sfw --with-as=/usr/sfw/bin/gas --with-gnu-as
--with-ld=/usr/ccs/bin/ld --without-gnu-ld --enable-languages=c,c++
--enable-shared
Thread model: posix
gcc version 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
Configure options
-----------------------
./configure --prefix=/opt/spread_64 --with-cflags=-m64 --with-ldflags=-m64
Build Errors
-----------------------
gcc -o spread spread.o protocol.o session.o groups.o alarm.o events.o
memory.o membership.o data_link.o network.o status.o log.o
flow_control.o message.o lex.yy.o y.tab.o configuration.o acm.o
acp-permit.o auth-null.o auth-ip.o
../stdutil/lib/libstdutil-threaded-release.a -m64 -lm -lrt -lsocket -lnsl
ld: warning: file
../stdutil/lib/libstdutil-threaded-release.a(stdarr.to): wrong ELF
class: ELFCLASS32
Undefined first referenced
symbol in file
stdskl_it_key groups.o
stdskl_is_end groups.o
stdarr_push_back groups.o
stdarr_empty groups.o
stdskl_size groups.o
stdskl_find groups.o
stdskl_put_seq_n groups.o
stdarr_destruct groups.o
stdskl_destruct groups.o
stdskl_begin groups.o
stdskl_empty groups.o
stdskl_erase groups.o
stdarr_size groups.o
stdskl_put groups.o
stdskl_end groups.o
stdskl_it_next groups.o
stdarr_pop_back groups.o
stdarr_construct groups.o
stdskl_construct groups.o
ld: fatal: Symbol referencing errors. No output written to spread
collect2: ld returned 1 exit status
make[1]: *** [spread] Error 1
make[1]: Leaving directory `/opt/src/spread-src-4.1.0/daemon'
make[1]: Entering directory `/opt/src/spread-src-4.1.0/docs'
../buildtools/fixpaths: input file ./SP_connect.0 missing!
make[1]: *** [SP_connect.3.out] Error 2
make[1]: Leaving directory `/opt/src/spread-src-4.1.0/docs'
make[1]: Entering directory `/opt/src/spread-src-4.1.0/libspread'
.
.
.
gcc -shared -o libspread.so fl.tlo scatp.tlo alarm.tlo events.tlo
memory.tlo sp.tlo -m64 ../stdutil/src/stdarr.lto
../stdutil/src/stdcarr.lto ../stdutil/src/stddll.lto
../stdutil/src/stderror.lto ../stdutil/src/stdfd.lto
../stdutil/src/stdhash.lto ../stdutil/src/stdit.lto
../stdutil/src/stdskl.lto ../stdutil/src/stdthread.lto
../stdutil/src/stdtime.lto ../stdutil/src/stdutil.lto -lm -lrt -lsocket
-lnsl -lposix4 -lthread -lpthread -Wl,-hlibspread.so.2
ld: fatal: file ../stdutil/src/stdarr.lto: wrong ELF class: ELFCLASS32
ld: fatal: File processing errors. No output written to libspread.so
collect2: ld returned 1 exit status
make[1]: *** [libspread.so] Error 1
make[1]: Leaving directory `/opt/src/spread-src-4.1.0/libspread'
make[1]: Entering directory `/opt/src/spread-src-4.1.0/examples'
.
.
.
gcc -m64 -o flush_user fl_user.to ../libspread/libspread.a -lm -lrt
-lsocket -lnsl -lposix4 -lthread -lpthread
Undefined first referenced
symbol in file
stdhash_erase_key ../libspread/libspread.a(fl.to)
stdmutex_destruct ../libspread/libspread.a(fl.to)
stddll_is_end ../libspread/libspread.a(fl.to)
stddll_it_val ../libspread/libspread.a(fl.to)
stdhash_is_end ../libspread/libspread.a(fl.to)
stdhash_it_val ../libspread/libspread.a(fl.to)
stdhash_it_key ../libspread/libspread.a(fl.to)
stderr_output ../libspread/libspread.a(fl.to)
stdhcode_sfh ../libspread/libspread.a(fl.to)
stdhash_destruct ../libspread/libspread.a(fl.to)
stddll_push_back ../libspread/libspread.a(fl.to)
stdcond_wait ../libspread/libspread.a(fl.to)
stddll_size ../libspread/libspread.a(fl.to)
stdcond_construct ../libspread/libspread.a(fl.to)
stddll_destruct ../libspread/libspread.a(fl.to)
stdmutex_grab ../libspread/libspread.a(fl.to)
stdmutex_drop ../libspread/libspread.a(fl.to)
stdcond_destruct ../libspread/libspread.a(fl.to)
stddll_begin ../libspread/libspread.a(fl.to)
stddll_empty ../libspread/libspread.a(fl.to)
stddll_clear ../libspread/libspread.a(fl.to)
stddll_erase ../libspread/libspread.a(fl.to)
stdmutex_construct ../libspread/libspread.a(fl.to)
stdhash_begin ../libspread/libspread.a(fl.to)
stdhash_empty ../libspread/libspread.a(fl.to)
stdhash_erase ../libspread/libspread.a(fl.to)
stddll_it_next ../libspread/libspread.a(fl.to)
stdhash_it_next ../libspread/libspread.a(fl.to)
stdflip32 ../libspread/libspread.a(fl.to)
stdflip16 ../libspread/libspread.a(fl.to)
stdhash_construct ../libspread/libspread.a(fl.to)
stdhash_copy_construct ../libspread/libspread.a(fl.to)
stdcond_wake_all ../libspread/libspread.a(fl.to)
stdhash_size ../libspread/libspread.a(fl.to)
stdhash_find ../libspread/libspread.a(fl.to)
stddll_construct ../libspread/libspread.a(fl.to)
stdhash_insert ../libspread/libspread.a(fl.to)
ld: fatal: Symbol referencing errors. No output written to flush_user
collect2: ld returned 1 exit status
make[1]: *** [flush_user] Error 1
make[1]: Leaving directory `/opt/src/spread-src-4.1.0/examples'
make: *** [all] Error 2
More information about the Spread-users
mailing list