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

Re: Broken applications: Openoffice on AMD64



Hi,

Gudjon I. Gudjonsson wrote:
> 
>    Edit  openoffice.org-2.0.3/debian/rules and there is some variable
> build_amd64???=n that should be y
> I only started building it seemed to work properly after that change.

This is right. It works... until some error occurs. :-/

So here is the way to make it works:

1) Get the source from the Debian repository
 apt-get source openoffice.org

2) Get the package needed to compile this (as root)
 su -c 'apt-get build-dep openoffice.org'

3) Move to the build directory
 cd openoffice-*

4) Ask to build the amd64 arch packages
   In debian/rules change the 'BUILD_AMD64=n' in 'BUILD_AMD64=y'.

5) Build the package (this might take quite a while)
 dpkg-buildpackage -rfakeroot -us -uc


Then, I hit an error in cpp_uno. Briefly, it seems that the bridge
interface has changed and this piece of code hasn't been updated:

bridges::cpp_uno::shared::UnoInterfaceProxy::dispatch(uno_Interface*,
const typelib_TypeDescription*, void*, void**, uno_Any**)' member
function declared in class 'bridges::cpp_uno::shared::UnoInterfaceProxy'
dmake:  Error code 1, while making

==================[Complete error log]=============

g++ -Wreturn-type -fmessage-length=0 -c -I.  -I. -I../inc -I../../../inc
-I../../../unx/inc -I../../../unxlngx6.pro/inc -I.
-I/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/solver/680/unxlngx6.pro/inc/stl
-I/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/solver/680/unxlngx6.pro/inc/external
-I/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/solver/680/unxlngx6.pro/inc
-I/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/solenv/unxlngx6/inc
-I/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/solenv/inc
-I/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/res
-I/openoffice.org-2.0.3/stlport/stlport
-I/openoffice.org-2.0.3/stlport/include/stlport
-I/openoffice.org-2.0.3/stlport/include/stlport
-I/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/solenv/inc/Xp31
-INO_JAVA_HOME/include -INO_JAVA_HOME/include/linux
-INO_JAVA_HOME/include/native_threads/include -I/usr/include     -I.
-I../../../res -I. -O0   -DLEAK_STATIC_DATA -pipe
-Wno-ctor-dtor-privacy -fno-use-cxa-atexit -fvisibility-inlines-hidden
-g1 -fexceptions -fno-enforce-eh-specs   -fpic -DLINUX -DUNX -DVCL -DGCC
-DC341 -DX86_64 -DCVER=C341 -D_USE_NAMESPACE -DNPTL -DGLIBC=2 -DX86_64
-D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1
-DSTLPORT_VERSION=400 -DHAVE_GCC_VISIBILITY_FEATURE -D__DMAKE -DUNIX
-DCPPU_ENV=gcc3
-DGXX_INCLUDE_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../include/c++/4.1.2
-DSUPD=680 -DPRODUCT -DNDEBUG -DPRODUCT_FULL -DOSL_DEBUG_LEVEL=0
-DEXCEPTIONS_ON -DCUI -DOOC680=OOC680   -DSHAREDLIB -D_DLL_
-DMULTITHREAD  -o ../../../unxlngx6.pro/slo/uno2cpp.o
/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx
/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:
In function 'void invoke_copy_to_stack(sal_uInt64*, char*, sal_uInt64*,
sal_uInt64*, double*)':
/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:122:
warning: converting to 'long unsigned int' from 'double'
/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:
At global scope:
/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:519:
error: no 'void
bridges::cpp_uno::shared::UnoInterfaceProxy::dispatch(uno_Interface*,
const typelib_TypeDescription*, void*, void**, uno_Any**)' member
function declared in class 'bridges::cpp_uno::shared::UnoInterfaceProxy'
dmake:  Error code 1, while making '../../../unxlngx6.pro/slo/uno2cpp.obj'
'---* tg_merge.mk *---'
dmake:  Error code 255, while making 'do_it_noopt'
'---* tg_merge.mk *---'

ERROR: Error 65280 occurred while making
/openoffice.org-2.0.3/ooo-build/build/ooc680-m7/bridges/source/cpp_uno/gcc3_linux_x86-64
make[1]: *** [stamp/build] Error 1
make[1]: Leaving directory `/openoffice.org-2.0.3/ooo-build'
make: *** [debian/stampdir/build] Error 2

===================================================

Moreover, when using the packages from
http://people.debian.org/~rene/openoffice.org/2.0.3/amd64/. Saving seems
to be ok but restoring gives:

[fleury@excalibur ~]$ ooimpress test.odp
*** glibc detected *** free(): invalid pointer: 0x00000000010855f0 ***

Meaning that some pointer address has been lost (probably because of
some abusive cast).

-- 
Emmanuel Fleury              | Office: 211
Associate Professor,         | Phone: +33 (0)5 40 00 35 24
LaBRI, Domaine Universitaire | Fax:   +33 (0)5 40 00 66 69
351, Cours de la Libération  | email: fleury@labri.fr
33405 Talence Cedex, France  | URL: http://www.labri.fr/~fleury



Reply to: