I needed to compile pb in 64, here it goes:

My Plataform

Using  Solaris 9. spark, gcc (3.4.6)

I compile using this configure.


./configure --prefix=/somewhere/protobuf  LDFLAGS="-L$PWD/src/solaris -
L/usr/local/lib/sparcv9"  CFLAGS="-mcpu=v9 -m64" CXXFLAGS="-mcpu=v9 -
m64"

Yes this will tell that I need to compile 64 , not sure if mcpu is
used, just in case set it v9 to use those 64libs

Then I got problem with
1)
/home/users/mcardona/app/protobuf-2.0.3/src/google/protobuf/stubs/
common.h

edited common.h to use
 "#include <inttypes.h>"
and comented
//#include <stdint.h>

Looks like this:
#include <cstddef>
#include <string>
#include <string.h>
#if defined(__osf__)
// Tru64 lacks stdint.h, but has inttypes.h which defines a superset
of
// what stdint.h would define.
//#include <inttypes.h>
#elif !defined(_MSC_VER)
//#include <stdint.h>
#include <inttypes.h>
#endif

2)
/home/users/mcardona/app/protobuf-2.0.3/src/google/protobuf/stubs/
strutil.cpp

at around 1033 there is a
  *value = strtof(str, &endptr);
this should be commented and changed to
  *value = strtod(str, &endptr);

Notes:
the original code
#ifdef _WIN32  // has no strtof()
  *value = strtod(str, &endptr);
#else
  *value = strtof(str, &endptr);
#endif
  return *str != 0 && *endptr == 0 && errno == 0;
}

LOL
 #ifdef _WIN32  // has no strtof() <== NEITHER DOES MY MACHINE

3)
maybe there are another strof that have to be changed to strof

4) make

make fails with this elfs error:

ld: fatal: file /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.6/../../../
libgcc_s.so: wrong ELF class: ELFCLASS32

Its looking to 32 lib, reason there is no ln to the .so

So
cd /usr/local/lib/sparcv9

ls -la to the libgcc:
  1   Sep  5  2006 libgcc_s.so.1
  13 Sep  5  2007 libgcc_s_sparcv9.so -> libgcc_s.so.1

There is no libgcc_s.so , duh!!!!!!!!!

Made a ln to the libgcc_s.so.1 as very important user in your box

another ls -la to libgcc and the sucker is there !!!
ls -la to the libgcc:
  13 May  8 14:39 libgcc_s.so -> libgcc_s.so.1  <=== Missing File
  1   Sep  5  2006 libgcc_s.so.1
  13 Sep  5  2007 libgcc_s_sparcv9.so -> libgcc_s.so.1

4) make again
5) make install


It seems the libs where created.

Take Care. Hope this little guide helps people like me.

Bye bye





--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to protobuf@googlegroups.com
To unsubscribe from this group, send email to 
protobuf+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to