2007年12月22日土曜日

SolarisでLinux_PAMのビルドに挑戦....挫折

Solarisでpam_mkhomedir.soを使いたいので、Linux-pam-0.99.9.0をビルドしてみると結構エラー。

gcc -DHAVE_CONFIG_H -I. -I.. -I../../libpam/include -I../../libpamc/include -DDEFAULT_MODULE_PATH=\"/lib/security/\" -DLIBPAM_COMPILE -I./include -DPAM_VERSION=\"0.99.9.0\" -O2 -D_REENTRANT -DPAM_DYNAMIC -fPIC -W -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wstrict-prototypes -Wwrite-strings -Winline -Wshadow -MT pam_modutil_cleanup.lo -MD -MP -MF .deps/pam_modutil_cleanup.Tpo -c pam_modutil_cleanup.c -fPIC -DPIC -o .libs/pam_modutil_cleanup.o
In file included from pam_modutil_private.h:14,
from pam_modutil_cleanup.c:7:
./include/security/pam_modutil.h:66: error: syntax error before "gid_t"
./include/security/pam_modutil.h:66: warning: function declaration isn't a prototype
./include/security/pam_modutil.h:79: error: syntax error before "gid_t"

いろいろ調べた結果、次の方法でビルドできそう....。
と思ったけど、asprintf系の多さに挫折...。

いちおう、その途中経過。
(1) configure時にCFLAGSのオプションを追加
$ ./configure CFLAGS=-D_POSIX_PTHREAD_SEMANTICS

http://docs.sun.com/app/docs/doc/802-1949/6i5ur8qbf?l=ja&a=view


(2) libpam/pam_modutil_private.hにgrp.hのinclude文を追加
----
#include "config.h"

#include ←追加
#include
#include

0 件のコメント:

コメントを投稿