Hi everyone,

I am new in packaging, and try to package a new stuff, but fail in
compiling process. I can manually compile and install it without any
problem, but when I use "rpmbuild -ba", there are so many error about
"undefined reference to bla bla bla".

On the attachment of this email, there are my SPEC file and a copy of
compiling error message. Hope you can teach me how to correct that.

Sincerely,

Bo
Name: libpinyin
Version: 0.7.92
Release: %mkrel 1
Summary: The library of a sentence-based Chinese pinyin input method
Source0: https://github.com/downloads/libpinyin/libpinyin/%{name}-%{version}.tar.gz
License: GPLv2+
Group: System/Internationalization
Url: https://github.com/libpinyin/libpinyin
Buildrequires: glib2-devel
Buildrequires: db5-devel
Requires: %{name}-data = %{version}-%{release}
 
%description
The libpinyin project aims to provide the algorithms core for intelligent sentence-based Chinese pinyin input methods.

%package        devel
Summary:        Development files for %{name}
Requires:       %{name} = %{version}-%{release}

%description    devel
The %{name}-devel package contains libraries and header files for developing applications that use %{name}.

%package        data
Summary:        Data files for %{name}
Requires:       %{name} = %{version}-%{release}

%description    data
The %{name}-data package contains data files.

%package        tools
Summary:        Tools for %{name}
Requires:       %{name}=%{version}-%{release}

%description    tools
The %{name}-tools package contains tools for training inputting habit.

%prep
%setup -q

%build
%configure

%make 

%install
rm -rf %{buildroot}
%makeinstall

%files
%doc AUTHORS COPYING README
%{_libdir}/*.so.*
%dir %{_datadir}/libpinyin

%files devel
%doc
%dir %{_includedir}/libpinyin-%{version}
%{_includedir}/libpinyin-%{version}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/libpinyin.pc

%files data
%doc
%{_datadir}/libpinyin/data

%files tools
%{_bindir}/gen_binary_files
%{_bindir}/import_interpolation
%{_bindir}/gen_unigram
%{_mandir}/man1/*.1.*
storage/.libs/libstorage.a(libstorage_la-chewing_large_table.o): In function 
`pinyin::ChewingArrayIndexLevel<1ul>::convert(unsigned int, 
pinyin::ChewingKey*, pinyin::PinyinIndexItem2<1ul>*, 
pinyin::PinyinIndexItem2<1ul>*, _GArray**) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/chewing_large_table.cpp:455: 
undefined reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/chewing_large_table.cpp:446: 
undefined reference to `g_array_append_vals'
storage/.libs/libstorage.a(libstorage_la-chewing_large_table.o): In function 
`pinyin::ChewingArrayIndexLevel<2ul>::convert(unsigned int, 
pinyin::ChewingKey*, pinyin::PinyinIndexItem2<2ul>*, 
pinyin::PinyinIndexItem2<2ul>*, _GArray**) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/chewing_large_table.cpp:446: 
undefined reference to `g_array_append_vals'
storage/.libs/libstorage.a(libstorage_la-chewing_large_table.o):/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/chewing_large_table.cpp:455:
 more undefined references to `g_array_append_vals' follow
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::DoublePinyinParser2::parse(unsigned int, _GArray*&, _GArray*&, char 
const*, int) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:716: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:717: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:749: 
undefined reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:750: 
undefined reference to `g_array_append_vals'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::ChewingParser2::parse_one_key(unsigned int, pinyin::ChewingKey&, char 
const*, int) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:864: 
undefined reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:851: 
undefined reference to `g_strconcat'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:852: 
undefined reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:848: 
undefined reference to `g_strdup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:860: 
undefined reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::FullPinyinParser2::FullPinyinParser2()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:208: 
undefined reference to `g_array_new'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::FullPinyinParser2::final_step(unsigned long, _GArray*&, _GArray*&) 
const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:413: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:414: 
undefined reference to `g_array_set_size'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::FullPinyinParser2::parse(unsigned int, _GArray*&, _GArray*&, char 
const*, int) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:262: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:263: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:267: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:270: 
undefined reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:274: 
undefined reference to `g_strndup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:394: 
undefined reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::ChewingParser2::parse(unsigned int, _GArray*&, _GArray*&, char const*, 
int) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:873: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:874: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:905: 
undefined reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:906: 
undefined reference to `g_array_append_vals'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::FullPinyinParser2::parse_one_key(unsigned int, pinyin::ChewingKey&, 
char const*, int) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:216: 
undefined reference to `g_strndup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:238: 
undefined reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:252: 
undefined reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::DoublePinyinParser2::parse_one_key(unsigned int, pinyin::ChewingKey&, 
char const*, int) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:685: 
undefined reference to `g_strdup_printf'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:691: 
undefined reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:698: 
undefined reference to `g_strdup_printf'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:704: 
undefined reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:688: 
undefined reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:701: 
undefined reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::ChewingKey::get_pinyin_string()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:93: 
undefined reference to `g_strdup_printf'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:91: 
undefined reference to `g_strdup'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::ChewingKey::get_chewing_string()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:107: 
undefined reference to `g_strdup_printf'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.cpp:104: 
undefined reference to `g_strdup'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`pinyin::FullPinyinParser2::~FullPinyinParser2()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.h:171: undefined 
reference to `g_array_free'
storage/.libs/libstorage.a(libstorage_la-pinyin_parser2.o): In function 
`~FullPinyinParser2':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/pinyin_parser2.h:171: undefined 
reference to `g_array_free'
storage/.libs/libstorage.a(libstorage_la-ngram.o): In function 
`pinyin::SingleGram::retrieve_all(_GArray*) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/ngram.cpp:100: undefined 
reference to `g_array_append_vals'
storage/.libs/libstorage.a(libstorage_la-ngram.o): In function 
`pinyin::Bigram::get_all_items(_GArray*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/ngram.cpp:378: undefined 
reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/ngram.cpp:397: undefined 
reference to `g_array_append_vals'
storage/.libs/libstorage.a(libstorage_la-ngram.o): In function 
`pinyin::SingleGram::search(pinyin::PhraseIndexRange*, _GArray*) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/ngram.cpp:125: undefined 
reference to `g_array_append_vals'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`hash_table_key_value_free':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:112: undefined 
reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:113: undefined 
reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::tag_entry_copy(int, char const*, int, char**, char**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:29: undefined 
reference to `g_strdup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:31: undefined 
reference to `g_strdupv'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:32: undefined 
reference to `g_strdupv'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::tag_entry_reclaim(pinyin::tag_entry*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:43: undefined 
reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:44: undefined 
reference to `g_strfreev'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`taglib_free_tag_array':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:53: undefined 
reference to `g_array_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_init()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:72: undefined 
reference to `g_ptr_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:73: undefined 
reference to `g_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:74: undefined 
reference to `g_ptr_array_add'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`split_line_init':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:62: undefined 
reference to `g_utf8_get_char'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:63: undefined 
reference to `g_utf8_get_char'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_add_tag(int, char const*, int, char const*, char const*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:94: undefined 
reference to `g_strsplit_set'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:95: undefined 
reference to `g_strsplit_set'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:99: undefined 
reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:101: undefined 
reference to `g_strfreev'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:102: undefined 
reference to `g_strfreev'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_read(char const*, int&, _GPtrArray*, _GHashTable*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:174: undefined 
reference to `g_ptr_array_foreach'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:175: undefined 
reference to `g_ptr_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:176: undefined 
reference to `g_hash_table_foreach_steal'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`split_line':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:120: undefined 
reference to `g_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:123: undefined 
reference to `g_utf8_get_char'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:127: undefined 
reference to `g_unichar_isspace'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:154: undefined 
reference to `g_utf8_skip'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:151: undefined 
reference to `g_utf8_get_char'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:152: undefined 
reference to `g_unichar_isgraph'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:160: undefined 
reference to `g_strndup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:163: undefined 
reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:122: undefined 
reference to `g_utf8_skip'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:168: undefined 
reference to `g_array_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_read(char const*, int&, _GPtrArray*, _GHashTable*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:181: undefined 
reference to `g_strv_length'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:203: undefined 
reference to `g_strdup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:204: undefined 
reference to `g_ptr_array_add'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:246: undefined 
reference to `g_return_if_fail_warning'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:207: undefined 
reference to `g_strv_length'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:208: undefined 
reference to `g_strv_length'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:254: undefined 
reference to `g_hash_table_lookup_extended'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:256: undefined 
reference to `g_log'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:257: undefined 
reference to `g_strfreev'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:244: undefined 
reference to `g_strdup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:247: undefined 
reference to `g_strdup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:248: undefined 
reference to `g_hash_table_insert'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:239: undefined 
reference to `g_log'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`split_line':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:132: undefined 
reference to `g_utf8_skip'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:134: undefined 
reference to `g_utf8_get_char'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:137: undefined 
reference to `g_return_if_fail_warning'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:143: undefined 
reference to `g_strndup'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:146: undefined 
reference to `g_strdup_printf'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:147: undefined 
reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_read(char const*, int&, _GPtrArray*, _GHashTable*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:262: undefined 
reference to `g_strfreev'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_remove_tag(int)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:274: undefined 
reference to `g_array_remove_index'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_push_state()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:282: undefined 
reference to `g_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:287: undefined 
reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:289: undefined 
reference to `g_ptr_array_add'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_pop_state()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:296: undefined 
reference to `g_ptr_array_remove_index'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_fini()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:306: undefined 
reference to `g_ptr_array_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_string_to_token(pinyin::PhraseLargeTable2*, 
pinyin::FacadePhraseIndex*, char const*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:341: undefined 
reference to `g_utf8_strlen'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:342: undefined 
reference to `g_utf8_to_ucs4'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::FacadePhraseIndex::prepare_tokens(_GArray**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/phrase_index.h:725: undefined 
reference to `g_array_new'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::FacadePhraseIndex::destroy_tokens(_GArray**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/phrase_index.h:761: undefined 
reference to `g_array_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_string_to_token(pinyin::PhraseLargeTable2*, 
pinyin::FacadePhraseIndex*, char const*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:354: undefined 
reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::taglib_token_to_string(pinyin::FacadePhraseIndex*, unsigned int)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:399: undefined 
reference to `g_ucs4_to_utf8'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:388: undefined 
reference to `g_strdup'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`ptr_array_entry_free':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:107: undefined 
reference to `g_free'
storage/.libs/libstorage.a(libstorage_la-tag_utility.o): In function 
`pinyin::tag_entry_reclaim(pinyin::tag_entry*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/storage/tag_utility.cpp:45: undefined 
reference to `g_strfreev'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`clear_steps':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:174: 
undefined reference to `g_hash_table_destroy'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:181: 
undefined reference to `g_array_free'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::PinyinLookup2(unsigned int, 
pinyin::FacadeChewingTable*, pinyin::FacadePhraseIndex*, pinyin::Bigram*, 
pinyin::Bigram*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:198: 
undefined reference to `g_ptr_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:199: 
undefined reference to `g_ptr_array_new'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::~PinyinLookup2()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:204: 
undefined reference to `g_ptr_array_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:205: 
undefined reference to `g_ptr_array_free'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::save_next_step(int, pinyin::lookup_value_t*, 
pinyin::lookup_value_t*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:448: 
undefined reference to `g_hash_table_lookup_extended'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:451: 
undefined reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:452: 
undefined reference to `g_hash_table_insert'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::search_bigram2(_GPtrArray*, int, _GArray**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:326: 
undefined reference to `g_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:362: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:377: 
undefined reference to `g_array_free'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::final_step(_GArray*&)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:475: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:510: 
undefined reference to `g_hash_table_lookup_extended'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::validate_constraint(_GArray*, _GArray*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:677: 
undefined reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:687: 
undefined reference to `g_array_set_size'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`init_steps':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:157: 
undefined reference to `g_ptr_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:158: 
undefined reference to `g_ptr_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:162: 
undefined reference to `g_direct_equal'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:162: 
undefined reference to `g_direct_hash'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:162: 
undefined reference to `g_hash_table_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:164: 
undefined reference to `g_array_new'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`populate_prefixes':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:141: 
undefined reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:147: 
undefined reference to `g_hash_table_insert'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::FacadePhraseIndex::prepare_ranges(_GArray**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/../../src/storage/phrase_index.h:666:
 undefined reference to `g_array_new'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::get_best_match(_GArray*, _GArray*, _GArray*, 
_GArray*&)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:227: 
undefined reference to `g_ptr_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:228: 
undefined reference to `g_ptr_array_new'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`populate_candidates':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:75: undefined 
reference to `g_ptr_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:84: undefined 
reference to `g_ptr_array_add'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`get_top_results':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:99: undefined 
reference to `g_ptr_array_set_size'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::FacadePhraseIndex::destroy_ranges(_GArray**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/../../src/storage/phrase_index.h:702:
 undefined reference to `g_array_free'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::PinyinLookup2::get_best_match(_GArray*, _GArray*, _GArray*, 
_GArray*&)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:276: 
undefined reference to `g_ptr_array_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:277: 
undefined reference to `g_ptr_array_free'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`get_top_results':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/pinyin_lookup2.cpp:113: 
undefined reference to `g_ptr_array_add'
lookup/.libs/liblookup.a(liblookup_la-pinyin_lookup2.o): In function 
`pinyin::FacadeChewingTable::search(int, pinyin::ChewingKey*, _GArray**) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/../../src/storage/facade_chewing_table.h:148:
 undefined reference to `g_array_set_size'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`clear_steps':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:81: undefined 
reference to `g_hash_table_destroy'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:88: undefined 
reference to `g_array_free'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`pinyin::PhraseLookup::PhraseLookup(pinyin::FacadePhraseTable2*, 
pinyin::FacadePhraseIndex*, pinyin::Bigram*, pinyin::Bigram*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:102: undefined 
reference to `g_ptr_array_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:103: undefined 
reference to `g_ptr_array_new'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`pinyin::PhraseLookup::~PhraseLookup()':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:108: undefined 
reference to `g_ptr_array_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:109: undefined 
reference to `g_ptr_array_free'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`pinyin::PhraseLookup::save_next_step(int, pinyin::lookup_value_t*, 
pinyin::lookup_value_t*)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:350: undefined 
reference to `g_hash_table_lookup_extended'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:353: undefined 
reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:355: undefined 
reference to `g_hash_table_insert'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`pinyin::PhraseLookup::final_step(_GArray*&)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:376: undefined 
reference to `g_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:413: undefined 
reference to `g_hash_table_lookup_extended'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`init_steps':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:61: undefined 
reference to `g_ptr_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:62: undefined 
reference to `g_ptr_array_set_size'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:67: undefined 
reference to `g_direct_equal'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:67: undefined 
reference to `g_direct_hash'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:67: undefined 
reference to `g_hash_table_new'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:70: undefined 
reference to `g_array_new'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`populate_prefixes':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:46: undefined 
reference to `g_array_append_vals'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/phrase_lookup.cpp:51: undefined 
reference to `g_hash_table_insert'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`pinyin::FacadePhraseIndex::prepare_tokens(_GArray**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/../../src/storage/phrase_index.h:725:
 undefined reference to `g_array_new'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`pinyin::FacadePhraseTable2::search(int, unsigned int*, _GArray**) const':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/../../src/storage/facade_phrase_table2.h:128:
 undefined reference to `g_array_set_size'
lookup/.libs/liblookup.a(liblookup_la-phrase_lookup.o): In function 
`pinyin::FacadePhraseIndex::destroy_tokens(_GArray**)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/../../src/storage/phrase_index.h:761:
 undefined reference to `g_array_free'
lookup/.libs/liblookup.a(liblookup_la-lookup.o): In function 
`pinyin::convert_to_utf8(pinyin::FacadePhraseIndex*, _GArray*, char const*, 
char*&)':
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/lookup.cpp:50: undefined 
reference to `g_ucs4_to_utf8'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/lookup.cpp:55: undefined 
reference to `g_strconcat'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/lookup.cpp:56: undefined 
reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/lookup.cpp:56: undefined 
reference to `g_free'
/home/bo/rpm/BUILD/libpinyin-0.7.92/src/lookup/lookup.cpp:53: undefined 
reference to `g_strdup'
collect2: error: ld returned 1 exit status
make[3]: *** [libpinyin.la] Error 1
make[3]: Leaving directory `/home/bo/rpm/BUILD/libpinyin-0.7.92/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/bo/rpm/BUILD/libpinyin-0.7.92/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/bo/rpm/BUILD/libpinyin-0.7.92'
make: *** [all] Error 2
error: Bad exit status from /home/bo/rpm/tmp/rpm-tmp.X3Ts8O (%build)


RPM build errors:
    Bad exit status from /home/bo/rpm/tmp/rpm-tmp.X3Ts8O (%build)

Reply via email to