Libreoffice build error[for android]

di liu disco.liu at gmail.com
Fri Mar 4 09:42:50 UTC 2022


Thank you for your reply.
> If you have current git master without any local changes and 'make
> distclean' and trying again doesn't work

I just modified one file which named "Makefile.fetch" location in root dir
of libreoffice,But i think this change has nothing to do with this error
below is my change's content
"

ifneq (,$(WGET))
define fetch_Download__wget_command
&& bash -c '$(WGET) --no-check-certificate --progress=dot:mega -Q 0 -P
"." -l 0 -nd -nH -N --no-use-server-timestamps $1/$2 2>&1 | tee -a
$(fetch_LOGFILE) && [ $$PIPESTATUS -eq 0 ]'
endef

"
I have added he green color option which used solve certification problem
but I still want to have try with "make distclean"

I have a another problem:
I have search the undefined method "lo_get_custom_widget_func" and find
this method is defined dynamic . It's was defined by native-code.py I don't
know why we're doing this and how it's work
.Could you give me a simple explanation or provide me some documents to
make it's clear ?

At last I wonder if I can do that execute "native-code.py" and put the
result to a new  cpp file and add it to makefile when I still have the link
error ?

thank you very much

Michael Weghorn <m.weghorn at posteo.de> 于2022年3月4日周五 15:02写道:

>
> Hi,
>
> On 03/03/2022 16.08, di liu wrote:
> > the build environment is linux(centos 7) which installed in vmware (my
> > host system is macOS) this is my autogen.input content
> > --with-distro=LibreOfficeAndroid
> > --with-android-sdk=/home/disco/Documents/dev_env/android_sdk
> >
> --with-android-ndk=/home/disco/Documents/dev_env/android_sdk/ndk/20.1.5948944
>
> > --with-ant-home=/home/disco/Documents/dev_env/apache-ant-1.10.12
>
> I tried a build with an equivalent autogen.input on Debian testing:
>
>      --with-distro=LibreOfficeAndroid
>      --with-android-sdk=/home/michi/Android/Sdk
>      --with-android-ndk=/home/michi/Android/Sdk/ndk/20.1.5948944
>      --with-external-tar=/home/michi/development/libreoffice-external
>
> which worked fine with master (as of commit
> 0a774bae7d402a6880760b1226a6741604e23f5a).
>
>
> > everything is ok when execute: ./autogen.sh But when I execute: make the
> > error is happened:
> >
> > [...]
> >     Linking
> >
>  /home/disco/Documents/res/libreoffice/android/obj/local/armeabi-v7a/liblo-native-code.so
> >
>  /home/disco/Documents/res/libreoffice/instdir/program/libuno_cppuhelpergcc3.a(shlib.o):shlib.cxx:function
> >     cppuhelper::detail::loadSharedLibComponentFactory(rtl::OUString
> >     const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString
> >     const&, rtl::OUString const&,
> >
>  com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory>
> >     const&, std::__ndk1::function<com::sun::star::uno::XInterface*
> >     (com::sun::star::uno::XComponentContext*,
> >     com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)>*,
> >     com::sun::star::uno::Reference<com::sun::star::uno::XInterface>*):
> >     error: undefined reference to 'lo_get_constructor_map'
> >
>  /home/disco/Documents/res/libreoffice/instdir/program/libuno_cppuhelpergcc3.a(shlib.o):shlib.cxx:function
> >     cppuhelper::detail::loadSharedLibComponentFactory(rtl::OUString
> >     const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString
> >     const&, rtl::OUString const&,
> >
>  com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory>
> >     const&, std::__ndk1::function<com::sun::star::uno::XInterface*
> >     (com::sun::star::uno::XComponentContext*,
> >     com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)>*,
> >     com::sun::star::uno::Reference<com::sun::star::uno::XInterface>*):
> >     error: undefined reference to 'lo_get_factory_map'
> >     [...] >
> >     Could you give me some suggestions
>
> If you have current git master without any local changes and 'make
> distclean' and trying again doesn't work, you could try using a
> different version of the Android NDK, or use LLD as linker instead of
> ld.gold by applying the demo patch at
> https://gerrit.libreoffice.org/c/core/+/130947 and switching to a newer
> NDK; a build here worked with that Gerrit change in place and an
> autogen.input containing this:
>
>      --with-distro=LibreOfficeAndroid
>      --with-android-ndk=/home/michi/Android/Sdk/ndk/22.1.7171670/
>      --with-android-sdk=/home/michi/Android/Sdk
>      --with-external-tar=/home/michi/development/libreoffice-external
>
> (At least my experience in the past was that it was a bit tricky to find
> a combination of Android NDK and linker that would work depending on
> architecture and whether this was a release or debug build. But the
> problems I encountered back then were more "fundamental" than the
> "undefined reference" issue you're encountering. Maybe all of the issues
> I had two years ago or so are fixed in newer versions of the toolchain,
> but so far I just stayed with what was working back then...)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20220304/24d66023/attachment.htm>


More information about the LibreOffice mailing list