On 9/26/12 5:47 PM, David Matthews wrote:

Well, I tried, along the same lines:

--build=x86_64-solaris  and  --build=amd64-solaris
CFLAGS='-m64 -O3 -I../libffi/include'
CXXFLAGS='-m64 -O3 -I../libffi/include'
CCASFLAGS='-m64 -O3'
.....
From the comment near the top of elfexport.cpp it seems that there is an explicit inclusion of sys/elf_386.h if it is present:

// Solaris seems to put processor-specific constants in separate files
#ifdef HAVE_SYS_ELF_SPARC_H
#include <sys/elf_SPARC.h>
#endif
#ifdef HAVE_SYS_ELF_386_H
#include <sys/elf_386.h>
#endif

Does it work if you add
#include <sys/elf_amd64.h>
just after that (without any ifdef)? If so it would be easy for me to fix.

make goes much further then. Here are the last 30 lines printed:

Making STRUCT
Created functor STRUCT
Created structure Struct
Making Conversions
Making CONVERSIONS
Created signature ForeignExceptionSig_Import
Created functor CONVERSIONS
Created structure Conversions
Making StructConversionals
Making STRUCT_CONVERSIONALS
Created functor STRUCT_CONVERSIONALS
Created structure StructConversionals
Created structure CInterface
/bin/sh ./libtool --tag=CC --mode=link gcc -DSOLARIS -Wall -fno-strict-aliasing -m64 -O3 -I../libffi/include -I../libffi/include -o poly polyexport.o libpolymain/libpolymain.la libpolyml/libpolyml.la -lpthread -lgmp -lsocket -lnsl -lm -ldl -lstdc++ -lgcc_s -lgcc libtool: link: gcc -DSOLARIS -Wall -fno-strict-aliasing -m64 -O3 -I../libffi/include -I../libffi/include -o .libs/poly polyexport.o libpolymain/.libs/libpolymain.a -lstdc++ libpolyml/.libs/libpolyml.so -L/usr/sfw/lib/amd64 -lpthread -lgmp -lsocket -lnsl -ldl /usr/sfw/lib/amd64/libstdc++.so -lm -lgcc_s -lgcc -R/home/bernard/local/polyml/i86pc-64/lib -R/usr/sfw/lib/amd64
ld: fatal: file polyexport.o: section .rel.data has invalid type [ SHT_REL ]
ld: fatal: file polyexport.o: section .rel.text has invalid type [ SHT_REL ]
ld: fatal: file polyexport.o: section .rel.data has invalid type [ SHT_REL ]
ld: fatal: file polyexport.o: section .rel.data has invalid type [ SHT_REL ]
ld: fatal: file polyexport.o: section .rel.data has invalid type [ SHT_REL ]
ld: fatal: file polyexport.o: section .rel.text has invalid type [ SHT_REL ]
ld: fatal: file polyexport.o: section .rel.data has invalid type [ SHT_REL ]
ld: warning: file /usr/sfw/lib/amd64/libstdc++.so: attempted multiple inclusion of file
ld: fatal: file processing errors. No output written to .libs/poly
collect2: ld returned 1 exit status
gmake[2]: *** [poly] Error 1
gmake[2]: Leaving directory `/home/bernard/local/polyml.5.5'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/home/bernard/local/polyml.5.5'
gmake: *** [all] Error 2

  Bernard.


_______________________________________________
polyml mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml

Reply via email to