|

楼主 |
发表于 2004-9-30 08:52:29
|
显示全部楼层
最初由 NBgg 发表
在gentoo下面还是不能编译
不知道为什么
/bin/sh ../../libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/scim-1.0/ -I../../src -g -O2 -c -o scim_ccin_server.lo `test -f 'scim_ccin_server.cpp' || echo'./'`scim_ccin_server.cpp
rm -f .libs/scim_ccin_server.lo
g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/scim-1.0/ -I../../src -g -O2 -c scim_ccin_server.cpp -MT scim_ccin_server.lo -MD -MP -MF .deps/scim_ccin_server.TPlo -fPIC -DPIC -o .libs/scim_ccin_server.lo
scim_ccin_server.cpp:160: error: `dgettext' was not declared in this scope
scim_ccin_server.cpp:161: error: `dgettext' was not declared in this scope
scim_ccin_server.cpp: In function `unsigned int
ccin_LTX_scim_imengine_module_init(const scim::ConfigPointer&)':
scim_ccin_server.cpp:205: error: `dgettext' undeclared (firstuse this
function)
scim_ccin_server.cpp:205: error: (Each undeclared identifier is reported only
once for each function it appears in.)
scim_ccin_server.cpp: In member function `virtual scim::WideString
CcinServerFactory::get_help() const':
scim_ccin_server.cpp:395: error: `dgettext' undeclared (firstuse this
function)
scim_ccin_server.cpp: In member function `void
CcinServerInstance::refresh_status_property()':
scim_ccin_server.cpp:1671: error: `bindtextdomain' undeclared(first use this
function)
scim_ccin_server.cpp:1672: error: `textdomain' undeclared (first use this
function)
scim_ccin_server.cpp:1673: error: `bind_textdomain_codeset' undeclared (first
use this function)
scim_ccin_server.cpp:1675: error: `dgettext' undeclared (first use this
function)
make[3]: *** [scim_ccin_server.lo] 错误 1
make[3]: Leaving directory `/home/private/ccinput-cooleyes-0.3.0/scim/IMEngine'
make[2]: *** [all-recursive] 错误 1
make[2]: Leaving directory `/home/private/ccinput-cooleyes-0.3.0/scim'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/home/private/ccinput-cooleyes-0.3.0'
make: *** [all] 错误 2
呵呵,错误不是很明显吗
你没有dgettext
你可以修改scim_ccin_server.cpp
将
#define _(String) dgettext(INPUT_METHOD_NAME,String)
#define N_(String) (String)
改成
#ifdef HAVE_GETTEXT
#include <libintl.h>
#define _(String) dgettext(INPUT_METHOD_NAME,String)
#define N_(String) (String)
#else
#define _(String) (String)
#define N_(String) (String)
#define bindtextdomain(Package,Directory)
#define textdomain(domain)
#define bind_textdomain_codeset(domain,codeset)
#endif
但这样,基本上你看到的输入法名称,属性值等都是英文的了
其实你把dgettext装上就ok了 |
|