[erlang-bugs] R15B01 Bug - Fail to Compile in Solaris 5.10 - i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.S:2176:2: error: #endif without #if

Fabrício Dias <>
Sat May 19 20:28:46 CEST 2012


Hi,
I'm new here on the list, and I signed up to help to compile the version
R15 on Solaris.
The following procedure that I performed ...
PS: In the past, I compiled a version R14B04, using the same procedure

*-- Config*
#uname -a
SunOS HOST 5.10 Generic_142910-17 i86pc i386 i86pc
# gcc --version
gcc (GCC) 4.6.3
# autoconf --version
autoconf (GNU Autoconf) 2.69
# echo $PATH
/usr/sbin:/usr/bin:/usr/ccs/bin:/opt/csw/bin:

*-- Procedure*
cd /dados/install-src
wget http://www.erlang.org/download/otp_src_R15B01.tar.gz
gunzip otp_src_R15B01.tar.gz
gtar -xvf otp_src_R15B01.tar
cd /dados/install-src/otp_src_R15B01
export ERL_TOP=`pwd`
echo $ERL_TOP
./otp_build autoconf
./configure --prefix=/opt
gmake
gmake install
rm /usr/bin/erl
rm /usr/bin/erlc
ln -s /opt/bin/erl /usr/bin
ln -s /opt/bin/erlc /usr/bin

*-- Result*
./otp_build autoconf: Ok
./configure --prefix=/opt: Ok
But, in gmake, we have:
*...bla bla bla....*
gcc  -g -O3 -I/dados/install-src/otp_src_R15B01/erts/i386-pc-solaris2.10
 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-tree-copyrename
 -DERTS_SMP -DHAVE_CONFIG_H -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wdeclaration-after-statement -DUSE_THREADS -D_THREAD_SAFE -D_REENTRANT
-DPOSIX_THREADS -D_POSIX_PTHREAD_SEMANTICS  -Ii386-pc-solaris2.10/opt/smp
-Ibeam -Isys/unix -Isys/common -Ii386-pc-solaris2.10 -Izlib  -Ipcre -Ihipe
-I../include -I../include/i386-pc-solaris2.10 -I../include/internal
-I../include/internal/i386-pc-solaris2.10 -c hipe/hipe_x86.c -o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86.o
gcc -g -O2 -I/dados/install-src/otp_src_R15B01/erts/i386-pc-solaris2.10
 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-tree-copyrename
 -DERTS_SMP -DHAVE_CONFIG_H -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wdeclaration-after-statement -DUSE_THREADS -D_THREAD_SAFE -D_REENTRANT
-DPOSIX_THREADS -D_POSIX_PTHREAD_SEMANTICS  -Ii386-pc-solaris2.10/opt/smp
-Ibeam -Isys/unix -Isys/common -Ii386-pc-solaris2.10 -Izlib  -Ipcre -Ihipe
-I../include -I../include/i386-pc-solaris2.10 -I../include/internal
-I../include/internal/i386-pc-solaris2.10 -c hipe/hipe_x86_glue.S -o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86_glue.o
m4  -DERTS_SMP=1 -DTARGET=i386-pc-solaris2.10 -DOPSYS=sol2 -DARCH=x86
hipe/hipe_x86_bifs.m4 > i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.S
gcc -g -O2 -I/dados/install-src/otp_src_R15B01/erts/i386-pc-solaris2.10
 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-tree-copyrename
 -DERTS_SMP -DHAVE_CONFIG_H -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wdeclaration-after-statement -DUSE_THREADS -D_THREAD_SAFE -D_REENTRANT
-DPOSIX_THREADS -D_POSIX_PTHREAD_SEMANTICS  -Ii386-pc-solaris2.10/opt/smp
-Ibeam -Isys/unix -Isys/common -Ii386-pc-solaris2.10 -Izlib  -Ipcre -Ihipe
-I../include -I../include/i386-pc-solaris2.10 -I../include/internal
-I../include/internal/i386-pc-solaris2.10 -c
i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.S -o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.o
i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.S:2176:2: error: #endif without
#if
gmake[3]: *** [obj/i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.o] Error 1
gmake[3]: Leaving directory
`/dados/install-src/otp_src_R15B01/erts/emulator'
gmake[2]: *** [opt] Error 2
gmake[2]: Leaving directory
`/dados/install-src/otp_src_R15B01/erts/emulator'
gmake[1]: *** [smp] Error 2
gmake[1]: Leaving directory `/dados/install-src/otp_src_R15B01/erts'
gmake: *** [emulator] Error 2

I tried deleting the "endif" spare in line 2176 (HAVE_nbif_emulate_fpe),
but got another error linking:
...bla bla bla...
obj/i386-pc-solaris2.10/opt/smp/hipe_mode_switch.o
obj/i386-pc-solaris2.10/opt/smp/hipe_native_bif.o
obj/i386-pc-solaris2.10/opt/smp/hipe_stack.o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86.o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86_glue.o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86_signal.o
obj/i386-pc-solaris2.10/opt/smp/hipe_x86_stack.o
 obj/i386-pc-solaris2.10/opt/smp/efile_drv.o
obj/i386-pc-solaris2.10/opt/smp/inet_drv.o
obj/i386-pc-solaris2.10/opt/smp/zlib_drv.o
obj/i386-pc-solaris2.10/opt/smp/ram_file_drv.o
obj/i386-pc-solaris2.10/opt/smp/ttsl_drv.o  -lsendfile -lrt -ldlpi -ldl -lm
  -lsocket -lnsl -lncurses -L../lib/internal/i386-pc-solaris2.10  -lkstat
/dados/install-src/otp_src_R15B01/erts/emulator/zlib/obj/i386-pc-solaris2.10/opt/libz.a
/dados/install-src/otp_src_R15B01/erts/emulator/pcre/obj/i386-pc-solaris2.10/opt/libepcre.a
 -lethread -lerts_internal_r -lpthread  -lkstat -lrt
Undefined                       first referenced
 symbol                             in file
hipe_emulate_fpe
 obj/i386-pc-solaris2.10/opt/smp/hipe_x86_bifs.o
ld: fatal: Symbol referencing errors. No output written to
/dados/install-src/otp_src_R15B01/bin/i386-pc-solaris2.10/beam.smp
gmake[3]: ***
[/dados/install-src/otp_src_R15B01/bin/i386-pc-solaris2.10/beam.smp] Error 1
gmake[3]: Leaving directory
`/dados/install-src/otp_src_R15B01/erts/emulator'
gmake[2]: *** [opt] Error 2
gmake[2]: Leaving directory
`/dados/install-src/otp_src_R15B01/erts/emulator'
gmake[1]: *** [smp] Error 2
gmake[1]: Leaving directory `/dados/install-src/otp_src_R15B01/erts'
gmake: *** [emulator] Error 2

Can anyone help me?
-- 
Fabrício Dias

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-bugs/attachments/20120519/97478aa5/attachment.html>


More information about the erlang-bugs mailing list