zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Raul Gutierrez Segales (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ZOOKEEPER-1077) C client lib doesn't build on Solaris
Date Fri, 01 May 2015 06:24:06 GMT

    [ https://issues.apache.org/jira/browse/ZOOKEEPER-1077?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14522824#comment-14522824
] 

Raul Gutierrez Segales commented on ZOOKEEPER-1077:
---------------------------------------------------

A few comments about the patch:

* "cast the pid to long for use by the snprintf format string." - do we we want to do this
on all platforms?
* why is:

{noformat}
#define MSG_NOSIGNAL SO_NOSIGPIPE
{noformat}

dropped for Apple?

> C client lib doesn't build on Solaris
> -------------------------------------
>
>                 Key: ZOOKEEPER-1077
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1077
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: build, c client
>    Affects Versions: 3.3.4
>         Environment: uname -a: SunOS [redacted] 5.10 Generic_142910-17 i86pc i386 i86pc
> GNU toolchain (gcc 3.4.3, GNU Make etc.)
>            Reporter: Tadeusz Andrzej Kadłubowski
>            Assignee: Chris Nauroth
>            Priority: Critical
>             Fix For: 3.5.2, 3.6.0
>
>         Attachments: ZOOKEEPER-1077.001.patch, zookeeper.patch
>
>
> Hello,
> Some minor trouble with building ZooKeeper C client library on Sun^H^H^HOracle Solaris
5.10.
> 1. You need to link against "-lnsl -lsocket"
> 2. ctime_r needs a buffer size. The signature is: "char *ctime_r(const time_t *clock,
char *buf, int buflen)"
> 3. In zk_log.c you need to manually cast pid_t to int (-Werror can be cumbersome ;) )
> 4. getpwuid_r()returns pointer to struct passwd, which works as the last parameter on
Linux.
> Solaris signature: struct passwd *getpwuid_r(uid_t  uid,  struct  passwd  *pwd, char
*buffer, int  buflen); 
> Linux signature: int getpwuid_r(uid_t uid, struct passwd *pwd, char *buf, size_t buflen,
struct passwd **result);



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message