Sorry, this isn't a supported platform. For a full list of supported platforms see
http://www.zeroc.com/platforms.html.
For this particular problem, assuming you can't upgrade to supported version of Linux, and you need the SSL plug-in, you can probably use the reinterpret_cast from the previous code block.
Code:
unsigned long
IceSSL_opensslThreadIdCallback()
{
#if defined(_WIN32)
return static_cast<unsigned long>(GetCurrentThreadId());
#elif defined(__FreeBSD__) || defined(__APPLE__) || defined(__osf1__)
//
// On some platforms, pthread_t is a pointer to a per-thread structure.
//
return reinterpret_cast<unsigned long>(pthread_self());
#elif (defined(__linux) || defined(__sun) || defined(__hpux)) || defined(_AIX)
//
// On Linux, Solaris, HP-UX and AIX, pthread_t is an integer.
//
return static_cast<unsigned long>(pthread_self());
#else
# error "Unknown platform"
#endif
}
Note that you might well run into further problems down the road, however!