이거 어디에 정의되어 있는 것인가요?

gconf_marshal_VOID__POINTER

gconf 2.28.0 컴파일 도중 이게 정의되어 있지 않다고 오류가 나서 말입니다.

today i tried this again and broken by same error.

gconf-client.c: In function ‘gconf_client_class_init’:
gconf-client.c:204: error: ‘gconf_marshal_VOID__POINTER’ undeclared (first use in this function)

somebody help me please…
where are gconf_marshal_VOID__POINTER declaration?

p.s. i’m sorry i cannot type korean on this computer because i deleted korean input program…

제가 늘 포풍 저글린 님을 타박하는거 같아서 답변드릴때마다
죄송스럽네요.

./configure 과정에 나오는 메시지를
좀더 유의 하시면 만사가 더 쉬워집니다.

아마도 ./configure 과정에서 glib-genmarshal 을 못찾았다고
경고나 에러메시지가 떴을겁니다.

make 컴파일과정에서
glib-genmarshal 이 gconfmarshal.list 파일을 기초로 해서
gconfmarshal.h gconfmarshal.c 파일을 만들어 내는데

[code:2z7a2s4v]/usr/bin/glib-genmarshal gconfmarshal.list --header --prefix=gconf_marshal > gconfmarshal.h
echo "#include "gconfmarshal.h"" > gconfmarshal.c
/usr/bin/glib-genmarshal gconfmarshal.list --body --prefix=gconf_marshal >> gconfmarshal.c
[/code:2z7a2s4v]

gconfmarshal.h 파일 속에
gconf_marshal_VOID__POINTER 가 정의 되어 있기 때문입니다.

more gconfmarshal.h

[code:2z7a2s4v]#ifndef gconf_marshal_MARSHAL_H
#define gconf_marshal_MARSHAL_H

#include <glib-object.h>

G_BEGIN_DECLS

/* VOID:POINTER (gconfmarshal.list:1) */
#define gconf_marshal_VOID__POINTER g_cclosure_marshal_VOID__POINTER

/* VOID:STRING,POINTER (gconfmarshal.list:2) */
extern void gconf_marshal_VOID__STRING_POINTER (GClosure *closure,
GValue *return_value,
guint n_param_values,
const GValue *param_values,
gpointer invocation_hint,
gpointer marshal_data);

G_END_DECLS

#endif /* gconf_marshal_MARSHAL_H */[/code:2z7a2s4v]

감사합니다. 덕분에 그 문제는 해결되었습니다. 그 문제는…
그런데…

gconf-defaults.c:34:18: error: glib.h: No such file or directory
gconf-defaults.c:35:25: error: glib-object.h: No such file or directory
gconf-defaults.c:37:28: error: dbus/dbus-glib.h: No such file or directory
gconf-defaults.c:38:37: error: dbus/dbus-glib-lowlevel.h: No such file or directory
gconf-defaults.c:40:27: error: polkit/polkit.h: No such file or directory

이번에는 이런 오류가 나서 이 파일들이 있는 경로들을 CPPFLAGS, LDFLAGS로 일일이 다 연결해 주었는데

gconf-defaults.c:106: error: expected specifier-qualifier-list before ‘PolkitAuthority’
(이하 무수한 오류들)

이런 오류가 나면서 컴파일이 중단되었습니다.
policykit을 설치하면서 내용을 변경하거나 한 것은 없습니다.
이거 혹시 configure 단계에서 policykit의 실행 파일 경로도 잡아 줘야 되는 건가요?
그것도 아니면 대체 이 무슨…

사용하시는 polkit의 버젼이 궁금하군요.
헤더 파일 <polkit/polkit.h>
로 연결된 polkit.h 안에 polkitauthority.h 가 있어야 할겁니다.

polkitauthority.h 안에

[code:2wokvtnr]typedef struct _PolkitAuthority PolkitAuthority;[/code:2wokvtnr]

가 정의 되어 있고

이 정의를 못찾으면 위와 같은 에러가 납니다.
다시 말해서 polkit 버젼을 0.94 이상으로 설치 하시라는 말씀.

이렇게 되어 있는 polkit 버젼이 있어야 한다는 겁니다.

more polkit/polkit.h

[code:2wokvtnr]/*

  • Copyright (C) 2008 Red Hat, Inc.
  • This library is free software; you can redistribute it and/or
  • modify it under the terms of the GNU Lesser General Public
  • License as published by the Free Software Foundation; either
  • version 2 of the License, or (at your option) any later version.
  • This library is distributed in the hope that it will be useful,
  • but WITHOUT ANY WARRANTY; without even the implied warranty of
  • MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  • Lesser General Public License for more details.
  • You should have received a copy of the GNU Lesser General
  • Public License along with this library; if not, write to the
  • Free Software Foundation, Inc., 59 Temple Place, Suite 330,
  • Boston, MA 02111-1307, USA.
  • Author: David Zeuthen <davidz@redhat.com>
    */

#ifndef __POLKIT_H
#define __POLKIT_H

#define _POLKIT_INSIDE_POLKIT_H 1

#include <polkit/polkittypes.h>
#include <polkit/polkitenumtypes.h>
#include <polkit/polkitimplicitauthorization.h>
#include <polkit/polkitactiondescription.h>
#include <polkit/polkiterror.h>
#include <polkit/polkitidentity.h>
#include <polkit/polkitunixuser.h>
#include <polkit/polkitunixgroup.h>
#include <polkit/polkitsubject.h>
#include <polkit/polkitunixprocess.h>
#include <polkit/polkitunixsession.h>
#include <polkit/polkitsystembusname.h>
#include <polkit/polkitauthorizationresult.h>
#include <polkit/polkitcheckauthorizationflags.h>
#include <polkit/polkitauthority.h> <==== !!!
#include <polkit/polkitdetails.h>
#include <polkit/polkittemporaryauthorization.h>

#undef _POLKIT_INSIDE_POLKIT_H

#endif /* __POLKIT_H */[/code:2wokvtnr]

아… policykit과 polkit이 다른 패키지였군요.
덕분에 gconf 컴파일 설치 성공했습니다. 감사합니다.