thrift-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Suhail Doshi <digitalwarf...@gmail.com>
Subject Re: Thrift on OpenSolaris
Date Wed, 29 Oct 2008 18:12:13 GMT
So I had some luck using gmake install on OpenSolaris however I am 
having problems now with it trying to install python2.4 which already 
exists:

creating /usr/lib/python2.4
error: could not create '/usr/lib/python2.4': Read-only file system

I tried editing the Makefile and changing the prefix to /opt/local 
however it still tries to create /usr/lib/python2.4

Suhail

Albert ??? wrote:
> I also have the same build issue with solaris.
>
> When configure thrift from source, I found that the following works well when configuring
thrift for solaris x86:
>
> configure CPPFLAGS='-D__BYTE_ORDER=__LITTLE_ENDIAN -DAF_LOCAL=AF_UNIX' LIBS='-
> lsocket'
>
> 1. Endianness
> Solaris doesn't come with endian.h and the configure script isn't smart enough to figure
out the endianness, so you have tell it what it is.  So when building on the x86 version,
you have to specify that it's a little endian platform.  Similarly you'll have to specify
that you're building on a big endian platform when using the sparc version.
>
> 2. AF_LOCAL
> From what I understand, AF_LOCAL isn't defined on solaris.  The equivalent would be AF_UNIX.
>
> 3. sockets
> gcc for solaris doesn't automatically link with lib socket so you have to specify this
manually as well.
>
> When you compile your thrift application, you'll have to specify the same gcc options
as above.
>
> Any ideas if this will ever be fixed?
>
>
>
>
> ----- Original Message ----
> From: Suhail Doshi <digitalwarfare@gmail.com>
> To: thrift-user@incubator.apache.org
> Sent: Wednesday, October 29, 2008 3:59:25 AM
> Subject: Thrift on OpenSolaris
>
> I am having a problem install Thrift on OpenSolaris, might anyone be 
> able to help with this error:
>
> Making install in compiler/cpp
> Regenerating version.h... No changes.
> make  install-am
> test -z "/usr/local/bin" || /opt/local/bin/gmkdir -p "/usr/local/bin"
>   /bin/sh ../../libtool --mode=install /opt/local/bin/ginstall -c 'thrift' '/usr/local/bin/thrift'
> /opt/local/bin/ginstall -c thrift /usr/local/bin/thrift
> Making install in lib
> Making install in cpp
> /bin/sh ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../..  -I/usr/local/include
-I./src  -Wall -g -O2 -MT Thrift.lo -MD -MP -MF .deps/Thrift.Tpo -c -o Thrift.lo `test -f
'src/Thrift.cpp' || echo './'`src/Thrift.cpp
> g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/local/include -I./src -Wall -g -O2 -MT Thrift.lo
-MD -MP -MF .deps/Thrift.Tpo -c src/Thrift.cpp  -fPIC -DPIC -o .libs/Thrift.o
> In file included from src/Thrift.cpp:10:
> ./src/protocol/TProtocol.h:34:4: #error "Cannot determine endianness"
> *** Error code 1
> make: Fatal error: Command failed for target `Thrift.lo'
> Current working directory /home/gptkxeaa/thrift/lib/cpp
> *** Error code 1
> The following command caused the error:
> failcom='exit 1'; \
> for f in x $MAKEFLAGS; do \
>   case $f in \
>     *=* | --[!k]*);; \
>     *k*) failcom='fail=yes';; \
>   esac; \
> done; \
> dot_seen=no; \
> target=`echo install-recursive | sed s/-recursive//`; \
> list='cpp   py  erl rb'; for subdir in $list; do \
>   echo "Making $target in $subdir"; \
>   if test "$subdir" = "."; then \
>     dot_seen=yes; \
>     local_target="$target-am"; \
>   else \
>     local_target="$target"; \
>   fi; \
>   (cd $subdir && make  $local_target) \
>   || eval $failcom; \
> done; \
> if test "$dot_seen" = "no"; then \
>   make  "$target-am" || exit 1; \
> fi; test -z "$fail"
> make: Fatal error: Command failed for target `install-recursive'
> Current working directory /home/gptkxeaa/thrift/lib
> *** Error code 1
> The following command caused the error:
> failcom='exit 1'; \
> for f in x $MAKEFLAGS; do \
>   case $f in \
>     *=* | --[!k]*);; \
>     *k*) failcom='fail=yes';; \
>   esac; \
> done; \
> dot_seen=no; \
> target=`echo install-recursive | sed s/-recursive//`; \
> list='compiler/cpp lib if test'; for subdir in $list; do \
>   echo "Making $target in $subdir"; \
>   if test "$subdir" = "."; then \
>     dot_seen=yes; \
>     local_target="$target-am"; \
>   else \
>     local_target="$target"; \
>   fi; \
>   (cd $subdir && make  $local_target) \
>   || eval $failcom; \
> done; \
> if test "$dot_seen" = "no"; then \
>   make  "$target-am" || exit 1; \
> fi; test -z "$fail"
> make: Fatal error: Command failed for target `install-recursive'
>
>
>
> http://pastie.org/302981
>
>
>       __________________________________________________________________
> Looking for the perfect gift? Give the gift of Flickr! 
>
> http://www.flickr.com/gift/
>   


Mime
View raw message