Hi Alex,

many thanks for your suggestions.

I checked out  B52_5 and did the following steps:

autogen.sh
configure.sh  --prefix=/opt/firebird-2.5 --with-system-icu

In src/jrd/common.h I commented out the follwing lines (SFIO seems only to be 
needed for older Solaris versions):

/*
#if (!defined(SFIO) && defined(SUPERSERVER))
#error "need to use SFIO"
#endif
*/


in src/include/types_pub.h:32 I added the definition of the SunStudio compiler:

#if defined(__GNUC__) || defined (__HP_cc) || defined (__HP_aCC) || defined 
(__SUNPRO_CC)

the SunStudio compiler needs the following environment to be exported:

export LANG=C;export LC_ALL=C


unfortunately I ran into an issue when running "make":

make[3]: Entering directory `/usr/share/src/B2_5_Release/gen'
CC -DBOOT_BUILD -I../src/include/gen -I../src/include -I../src/vulcan 
-DNAMESPACE=Vulcan -DNDEBUG -w -DSOLARIS -DSOLX86 -DBSD_COMP 
-fno-omit-frame-pointer -fmessage-length=0 -MMD -fPIC -O2 -march=pentium  
-D_REENTRANT    -c ../src/jrd/isc_file.cpp -o ../temp/boot/jrd/isc_file.o
CC: Warning: Option -fno-omit-frame-pointer passed to ld, if ld is invoked, 
ignored otherwise
CC: Warning: Option -fmessage-length=0 passed to ld, if ld is invoked, ignored 
otherwise
CC: Warning: Option -fPIC passed to ld, if ld is invoked, ignored otherwise
CC: Warning: Option -march=pentium passed to ld, if ld is invoked, ignored 
otherwise
"../src/jrd/isc_file.cpp", line 1387: Error: mnt_tab is not defined.
"../src/jrd/isc_file.cpp", line 1387: Error: Badly formed expression.
"../src/jrd/isc_file.cpp", line 1387: Error: Badly formed expression.
3 Error(s) detected.


this seems to be related to the use of SFIO (even it's no longer required).

in src/jrd/isc_file.cpp:1360 a special handler for solaris is defined that 
seams not to work with newer versions (like openindiana).

BTW it's a 64bit build.


any help is really appreciated.

Carsten





 
-----Original message-----
> From:Alex Peshkoff <peshk...@mail.ru>
> Sent: Friday 19th June 2015 11:12
> To: firebird-devel@lists.sourceforge.net
> Subject: Re: [Firebird-devel] build 2.54. on Solaris x86
> 
> On 06/19/2015 11:05 AM, Carsten John wrote:
> > Hello everybody,
> >
> > I'm trying to build 2.54. on Solaris x86 (exactly, it's OpenIndiana).
> >
> > I've installed SunStudio12 and followed the instructions for building on 
> > POSIX.
> >
> > Unfortunately, I ran into problems compiling the stuff:
> >
> > The relevant lines:
> >
> > make[3]: Entering directory `/usr/share/src/Firebird-2.5.4.26856-0/gen'
> > CC -DBOOT_BUILD -I../src/include/gen -I../src/include -I../src/vulcan 
> > -DNAMESPACE=Vulcan -xbuiltin=%all -xO2 -xlibmil -DNDEBUG -DSOLARIS 
> > -DBSD_COMP -D__EXTENSIONS__ -D_POSIX_THREAD_SEMANTICS 
> > -D_POSIX_THREAD_PRIO_INHERIT -D_POSIX_C_SOURCE=199506L -KPIC 
> > -erroff=wvarhidemem  -DSFIO -I/usr/include/ast/sfio.h/include -D_REENTRANT 
> > -pthread   -c ../src/jrd/gds.cpp -o ../temp/boot/jrd/gds.o
> > CC: Warning: Option -pthread passed to ld, if ld is invoked, ignored 
> > otherwise
> > "../src/include/types_pub.h", line 96: Error: Multiple declaration for 
> > ISC_LONG.
> > "../src/include/types_pub.h", line 97: Error: Multiple declaration for 
> > ISC_ULONG.
> 
> Is it 32- or 64-bit build?
> 
> > "/usr/include/sys/int_types.h", line 125: Error: Multiple declaration for 
> > intptr_t.
> > "/usr/include/sys/int_types.h", line 126: Error: Multiple declaration for 
> > uintptr_t.
> 
> Look at types_pub.h:32 and add appropriate define for your compiler to it
> 
> > "../src/jrd/../jrd/../jrd/os/guid.h", line 57: Error: A declaration does 
> > not specify a tag or an identifier.
> 
> Try to build not 2.5.4, but B2_5_Release, that problem is sooner of all 
> solved in it.
> 
> > "../src/jrd/../jrd/../jrd/os/guid.h", line 58: Warning: Types cannot be 
> > declared in anonymous union.
> > "../src/jrd/gds.cpp", line 2001: Warning (Anachronism): Assigning extern 
> > "C" void(*)(void*,short,const char*) to void(*)(void*,short,const char*).
> > "../src/jrd/gds.cpp", line 2117: Warning (Anachronism): Formal argument 
> > cleanup of type void(*)() in call to static 
> > Firebird::InstanceControl::registerGdsCleanup(void(*)()) is being passed 
> > extern "C" void(*)().
> > 5 Error(s) and 3 Warning(s) detected.
> > make[3]: *** [../temp/boot/jrd/gds.o] Error 5
> > make[3]: Leaving directory `/usr/share/src/Firebird-2.5.4.26856-0/gen'
> > make[2]: *** [gpre_boot] Error 2
> > make[2]: Leaving directory `/usr/share/src/Firebird-2.5.4.26856-0/gen'
> > make[1]: *** [../gen/firebird/bin/gpre_static] Error 2
> > make[1]: Leaving directory `/usr/share/src/Firebird-2.5.4.26856-0/gen'
> > make: *** [firebird] Error 2
> >
> > Any suggestions?
> >
> > thx
> >
> > Carsten
> >
> >
> > ------------------------------------------------------------------------------
> > Firebird-Devel mailing list, web interface at 
> > https://lists.sourceforge.net/lists/listinfo/firebird-devel
> >
> 
> 
> ------------------------------------------------------------------------------
> Firebird-Devel mailing list, web interface at 
> https://lists.sourceforge.net/lists/listinfo/firebird-devel
> 

------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to