Re: Pango failure in cross-compiled enviro [solved]



The problem was not in Pango at all, but in the underlying GLIB.  More 
specifically, when I compiled glib, I was forced to preload the configure 
cache with some values, because test programs cannot be run in a 
cross-compile environment.  Here is the snippet of my configure cache (called 
arm.cache, included in ./configure as "--cache-file=arm.cache"):
lib_cv_long_long_format=ll
lf_cv_sane_realloc=yes
glib_cv_stack_grows=yes
glib_cv_uscore=no
ac_cv_func_posix_getpwuid_r=yes
ac_cv_func_getpwuid_r=yes
glib_cv_has__inline__=yes
glib_cv_has__inline=yes
glib_cv_hasinline=yes
glib_cv_sane_realloc=yes
glib_cv_va_copy=yes
glib_cv___va_copy=yes
glib_cv_va_val_copy=yes
glib_cv_sizeof_gmutex=24
glib_cv_byte_contents_gmutex=no

Not all are needed by glib, but I use the same pre-seed cache for several 
projects.  In my case, I guessed incorrectly at the values for 
glib_cv_stack_grows and glib_cv_uscore.  I ran a ./configure on the native 
arm box, got the correct values, put them in my pre-cache file, and then 
rebuilt GLIB, all of pango's pre-requisites, and pango itself.  I now get the 
expected output from pango-querymodules:
oot@(none):/opt/fdo/bin# ./pango-querymodules
# Pango Modules file
# Automatically generated file, do not edit
#
# ModulesPath = /opt/fdo/lib/pango/1.5.0/modules
#
/opt/fdo/lib/pango/1.5.0/modules/pango-arabic-fc.so ArabicScriptEngineFc 
PangoEngineShape PangoRenderFc arabic:*
/opt/fdo/lib/pango/1.5.0/modules/pango-basic-fc.so BasicScriptEngineFc 
PangoEngineShape PangoRenderFc armenian:* bopomofo:* cherokee:* coptic:* 
cyrillic:* deseret:* ethiopic:* georgian:* gothic:* greek:* han:* hiragana:* 
katakana:* latin:* ogham:* old-italic:* runic:* canadian-aboriginal:* yi:* 
braille:* cypriot:* limbu:* osmanya:* shavian:* linear-b:* ugaritic:* 
glagolitic:* cuneiform:* phoenician:* common:
/opt/fdo/lib/pango/1.5.0/modules/pango-basic-x.so BasicScriptEngineX 
PangoEngineShape PangoRenderX common:
/opt/fdo/lib/pango/1.5.0/modules/pango-hangul-fc.so HangulScriptEngineFc 
PangoEngineShape PangoRenderFc hangul:*
/opt/fdo/lib/pango/1.5.0/modules/pango-hebrew-fc.so HebrewScriptEngineFc 
PangoEngineShape PangoRenderFc hebrew:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so devaScriptEngineFc 
PangoEngineShape PangoRenderFc devanagari:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so bengScriptEngineFc 
PangoEngineShape PangoRenderFc bengali:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so guruScriptEngineFc 
PangoEngineShape PangoRenderFc gurmukhi:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so gujrScriptEngineFc 
PangoEngineShape PangoRenderFc gujarati:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so oryaScriptEngineFc 
PangoEngineShape PangoRenderFc oriya:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so tamlScriptEngineFc 
PangoEngineShape PangoRenderFc tamil:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so teluScriptEngineFc 
PangoEngineShape PangoRenderFc telugu:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so kndaScriptEngineFc 
PangoEngineShape PangoRenderFc kannada:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so mlymScriptEngineFc 
PangoEngineShape PangoRenderFc malayalam:*
/opt/fdo/lib/pango/1.5.0/modules/pango-indic-fc.so sinhScriptEngineFc 
PangoEngineShape PangoRenderFc sinhala:*
/opt/fdo/lib/pango/1.5.0/modules/pango-khmer-fc.so KhmerScriptEngineFc 
PangoEngineShape PangoRenderFc khmer:*
/opt/fdo/lib/pango/1.5.0/modules/pango-syriac-fc.so SyriacScriptEngineFc 
PangoEngineShape PangoRenderFc syriac:*
/opt/fdo/lib/pango/1.5.0/modules/pango-thai-fc.so ThaiScriptEngineFc 
PangoEngineShape PangoRenderFc thai:* lao:*
/opt/fdo/lib/pango/1.5.0/modules/pango-tibetan-fc.so TibetanScriptEngineFc 
PangoEngineShape PangoRenderFc tibetan:*


Thanks to Behdad for his guidance.

John

On Tuesday 05 September 2006 14:33, Behdad Esfahbod wrote:
> On Tue, 2006-09-05 at 14:24 -0500, John Gorkos wrote:
> > On Tuesday 05 September 2006 14:05, you wrote:
> > > On Tue, 2006-09-05 at 15:01 -0400, John Gorkos wrote:
> > > > 00003364 T script_engine_create
> > > > 000032f8 T script_engine_exit
> > > > 000032d0 T script_engine_init
> > > > 00003308 T script_engine_list
> > > > 0001c2ec d script_engines
> > >
> > > This looks correct.  You run pango-querymodules on the target, right?
> >
> > Indeed, I am.   Here's the proof:
>
> This can then only mean that gmodule is for some reason failing to find
> the symbols.  Can you try writing a simple test case to expose the
> problem and debug it?  Look around pango/pango/querymodules.c around
> line 130, it's a matter of a couple function calls.
>
> You may also want to open a bug at http://bugzilla.gnome.org/ and follow
> up there instead of the list.
>
> Thanks,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]