I have troubles trying to execute
eyedb-postinstall.sh ina sun/solaris7 machine
when script run eyedbdbmcreate
the system fall in a loop:
ioctl: Not a data message
ioctl: Not a data message
ioctl: Not a data message
ioctl: Not a data message ...
Thank for helps
Ricardo
Logged In: YES
user_id=1833380
Originator: NO
Please find below diffs for my proposed fix.
--- eyedb-2.7.10-orig/libtool 2007-09-18 07:15:28.386478490 +0000
+++ eyedb-2.7.10/libtool 2007-09-19 05:00:57.901035607 +0000
@@ -7469,7 +7469,7 @@
# Dependencies to place after the objects being linked to create a
# shared library.
-postdeps="-lCstd -lCrun"
+postdeps="-lCrun"
# The library search path used internally by the compiler when linking
# a shared library.
--- eyedb-2.7.10-orig/src/lib/strutils.cc 2006-01-28 14:13:38.000000000 +0000
+++ eyedb-2.7.10/src/lib/strutils.cc 2007-09-19 05:00:57.901595483 +0000
@@ -23,6 +23,8 @@
#include <eyedbconfig.h>
+#include <stdio.h>
+
#include <eyedblib/strutils.h>
std::string str_convert(char c, const char *fmt)
--- eyedb-2.7.10-orig/src/lib/butils.cc 2006-04-05 14:21:49.000000000 +0000
+++ eyedb-2.7.10/src/lib/butils.cc 2007-09-19 05:00:57.901813316 +0000
@@ -28,6 +28,7 @@
#endif
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include <eyedblib/machtypes.h>
#include <eyedblib/butils.h>
--- eyedb-2.7.10-orig/src/eyedbsm/oapi.cc 2006-01-28 14:13:38.000000000 +0000
+++ eyedb-2.7.10/src/eyedbsm/oapi.cc 2007-09-19 05:00:57.902099754 +0000
@@ -23,6 +23,8 @@
#include <eyedbconfig.h>
+#include <malloc.h>
+
#include <eyedbsm/eyedbsm.h>
namespace eyedbsm {
--- eyedb-2.7.10-orig/src/eyedb/GetOpt.cc 2006-01-28 14:13:37.000000000 +0000
+++ eyedb-2.7.10/src/eyedb/GetOpt.cc 2007-09-19 05:00:57.902843163 +0000
@@ -21,6 +21,7 @@
Author: Eric Viara <viara@sysra.com>
*/
+#include <string.h>
#include "GetOpt.h"
--- eyedb-2.7.10-orig/src/eyedb/oqlbase.cc 2006-09-10 19:47:10.000000000 +0000
+++ eyedb-2.7.10/src/eyedb/oqlbase.cc 2007-09-19 06:30:10.583872589 +0000
@@ -44,6 +44,22 @@
#define NEW_SUPPRESS_DOUBLES
+#ifndef MININT
+#ifdef INT_MIN
+#define MININT INT_MIN
+#else
+#define MININT 0x80000000
+#endif
+#endif
+
+#ifndef MINSHORT
+#ifdef SHRT_MIN
+#define MINSHORT SHRT_MIN
+#else
+#define MINSHORT 0x8000
+#endif
+#endif
+
#include "oql_p.h"
namespace eyedb {
--- eyedb-2.7.10-orig/src/lib/rpc_be.cc 2006-09-10 19:47:12.000000000 +0000
+++ eyedb-2.7.10/src/lib/rpc_be.cc 2007-09-19 08:09:48.520350577 +0000
@@ -547,12 +547,18 @@
PERROR(msg_make("eyedb fatal error: unable to create pipe"));
return rpc_Error;
}
-#if defined(SOLARIS) || defined(ULTRASOL7)
+#if defined(SOLARIS) || defined(ULTRASOL7) || (defined(__sun) && defined(__SVR4))
if (ioctl(pfd[0], I_PUSH, "connld") < 0) {
if (created) unlink(portname);
PERROR(msg_make("eyedb fatal error: unable to configure pipe"));
return rpc_Error;
}
+
+ if (ioctl(pfd[0], I_SRDOPT, RNORM | RPROTDIS) < 0) {
+ if (created) unlink(portname);
+ PERROR(msg_make("eyedb fatal error: ioctl(fd, I_SRDOPT, RNORM | RPROTDIS) failed on pipe"));
+ return rpc_Error;
+ }
#endif
if (fattach(pfd[0], port->portname) < 0) {