Hi !!
Dear all:

I try to build microb-engine on scratchbox and run the TestGtkEmbed on
my device.
I download the sourcecode from 
https://garage.maemo.org/svn/browser/mozilla/trunk/microb-engine
,and modify the "./build_non_deb.sh" to use mozconfigthebestrunk as
mozconfig.  I build it successfully. When I run the TestGtkEmbed ,it
comes out with a error message "Couldn't find GTKMozEmbed symbols".
Then I try to trace the code, I found that GTKEmbedGlueStartup return
NS_ERROR_LOSS_OF_SIGNIFICANT_DATA as fail. In the function
GTKEmbedGlueStartup (), it call another function
XPCOMGlueLoadXULFunctions in gtkmozembed_glue.cpp. It seems try to
load GTKMOZEMBED_FUNCTIONS from libxul (Am I right?).

GTKMOZEMBED_FUNCTIONS was defined as following:
#define GTKMOZEMBED_FUNCTIONS \
  GTKF(gtk_moz_embed_get_type) \
  GTKF(gtk_moz_embed_new) \
  GTKF(gtk_moz_embed_push_startup) \
  GTKF(gtk_moz_embed_pop_startup) \
  GTKF(gtk_moz_embed_set_path) \
  GTKF(gtk_moz_embed_set_comp_path) \
  GTKF(gtk_moz_embed_set_profile_path) \
  GTKF(gtk_moz_embed_load_url) \
  GTKF(gtk_moz_embed_stop_load) \
  GTKF(gtk_moz_embed_can_go_back) \
  GTKF(gtk_moz_embed_can_go_forward) \
  GTKF(gtk_moz_embed_go_back) \
  GTKF(gtk_moz_embed_go_forward) \
  GTKF(gtk_moz_embed_render_data) \
  GTKF(gtk_moz_embed_open_stream) \
  GTKF(gtk_moz_embed_append_data) \
  GTKF(gtk_moz_embed_close_stream) \
  GTKF(gtk_moz_embed_get_link_message) \
  GTKF(gtk_moz_embed_get_js_status) \
  GTKF(gtk_moz_embed_get_title) \
  GTKF(gtk_moz_embed_get_location) \
  GTKF(gtk_moz_embed_reload) \
  GTKF(gtk_moz_embed_set_chrome_mask) \
  GTKF(gtk_moz_embed_get_chrome_mask) \
  GTKF(gtk_moz_embed_single_get_type) \
  GTKF(gtk_moz_embed_single_get) \
  GTKF(gtk_moz_embed_set_directory_service_provider) \
  GTKMOZEMBED2_FUNCTIONS

I try to nm my libxul.so to grep above functions, but no one was found
in my libxul.so.

And I trace the Makefile in microb-engine/scratch_build/build-tree/obj-
dir/toolkit/library where libxul.so was produced.

Some code was marked as comment:

# dependent libraries
#ifneq (,$(MOZ_ENABLE_GTK2))
#SHARED_LIBRARY_LIBS += \
#  $(DEPTH)/embedding/browser/gtk/src/$(LIB_PREFIX)gtkembedmoz.$
(LIB_SUFFIX)
#DEFINES += -DMOZ_ENABLE_GTK2
#endif

It seems to be the cause why libgtkembedmoz was not link into
libxul.so.

Could anybody can help me to fix this.
Than you
BRs

===============my mozconfig=====================

mk_add_options MOZ_CO_PROJECT=suite,browser,xulrunner
ac_add_options --enable-application=xulrunner

#Simple Build
ac_add_options --disable-javaxpcom
ac_add_options --disable-js-static-build
ac_add_options --disable-tests

#Toolkit Options for Linux
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --enable-xft
ac_add_options --disable-freetype2
ac_add_options --enable-pango

#ac_add_options --disable-pango --disable-postscript --disable-xprint
--disable-printing --disable-mathml --disable-canvas --disable-svg

#Micro Base
ac_add_options --with-embedding-profile=minimal
#Disabling something that not Vital
ac_add_options --disable-updater
ac_add_options --disable-accessibility
ac_add_options --enable-feeds
ac_add_options --disable-webservices
#Should be enabled in Micro base
ac_add_options --enable-crypto
ac_add_options --enable-necko-protocols="about data http file res ftp"
ac_add_options --enable-chrome-format=flat
ac_add_options --enable-plugins
ac_add_options --enable-extensions="xml-rpc spatialnavigation gnomevfs
ftv"
ac_add_options --disable-xinerama
ac_add_options --enable-xpfe-components # Will add only directory+ftp
viewer with profile minimal
ac_add_options --enable-image-decoders="png gif jpeg bmp"

#Perf Improvements
ac_add_options --disable-necko-small-buffers


# Compiler options
ac_add_options --disable-pedantic

#Advanced disables for base microb
ac_add_options --enable-jsloader
#ac_add_options --disable-permissions #popup and cookie blocking not
for Micrb Exactly ;)
ac_add_options --disable-xmlextras #Will try it ;)
ac_add_options --disable-gnomeui # I think we have no Gnome Ui library
ac_add_options --disable-dbus # I think we have no Gnome Ui library

ac_add_options --with-branding=branding/microb

#Additional options required for Micro ( I hope someday it will be
part of Mozilla Tree)
ac_add_options --enable-microb
#ac_add_options --disable-xslt
ac_add_options --disable-moz-mork
ac_add_options --disable-xremote

#Micro+ Requirements
ac_add_options --disable-plaintext-editor-only
#ac_add_options --enable-svg
ac_add_options --disable-oji
ac_add_options --enable-xslt
#mk_add_options [EMAIL PROTECTED]@/../obj-build-adv

#Build tree organize options
#mk_add_options [EMAIL PROTECTED]@/../obj-microb-base
#mk_add_options MOZ_MAKE_FLAGS=" -j19"

#Using of sistem libraries (Debian Way ;) )
#ac_add_options --with-system-png
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib
ac_add_options --with-system-bz2
ac_add_options --disable-js-binary

#Debug,Optimize options
#ac_add_options --enable-debug
#ac_add_options --enable-debugger-info-modules
ac_add_options --disable-strip

#Logging, perfomance metrics options
#ac_add_options --enable-reflow-perf
#ac_add_options --enable-perf-metrics
#ac_add_options --enable-logrefcnt
#ac_add_options --enable-logging

#JProfiler Options
#ac_add_options --disable-debug
#ac_add_options --enable-debugger-info-modules
#ac_add_options --disable-strip
#ac_add_options --enable-jprof

#Just for fun, View Source Enabling
#ac_add_options --enable-mathml --enable-view-source
#ac_add_options --enable-necko-protocols="about data http file res ftp
viewsource"

#Firefox Building
#Xul Building
#ac_add_options --enable-xul
ac_add_options --enable-rdf

#ac_add_options --disable-microb
#ac_add_options --enable-profilelocking
#ac_add_options --disable-url-classifier
#ac_add_options --disable-safe-browsing
ac_add_options --disable-svg
#ac_add_options --enable-feeds
#ac_add_options --with-branding=other-licenses/branding/firefox
#ac_add_options --enable-application=browser
#ac_add_options --enable-xpinstall
ac_add_options --disable-airbag
ac_add_options --enable-storage

#Temporary fixed bugs related 33235 29319 29676 29681, Native uconv
broken :(
#Can be enabled with 325_BUG_native_uconv_XML.dpatch
330_BUG_native_iconv.fix.dpatch (small native converter base) patches
ac_add_options --disable-native-uconv
#ac_add_options --enable-native-uconv  # in Microb env it fixed

_______________________________________________
dev-embedding mailing list
dev-embedding@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-embedding

Reply via email to