== Default files found in OpenOffice.org.app == Files and libraries allready included in Binary distribution of OpenOffice : {{{ /Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK//idl/com/sun/star/mozilla/xpcom/ /Applications/OpenOffice.org.app/Contents//basis-link/program/components/libxpcom_compat_c.dylib /Applications/OpenOffice.org.app/Contents//basis-link/program/components/xpcom_base.xpt /Applications/OpenOffice.org.app/Contents//basis-link/program/components/xpcom_components.xpt /Applications/OpenOffice.org.app/Contents//basis-link/program/components/xpcom_ds.xpt /Applications/OpenOffice.org.app/Contents//basis-link/program/components/xpcom_io.xpt /Applications/OpenOffice.org.app/Contents//basis-link/program/components/xpcom_obsolete.xpt /Applications/OpenOffice.org.app/Contents//basis-link/program/components/xpcom_threads.xpt /Applications/OpenOffice.org.app/Contents//basis-link/program/components/xpcom_xpti.xpt /Applications/OpenOffice.org.app/Contents//basis-link/program/libxpcom.dylib /Applications/OpenOffice.org.app/Contents//basis-link/program/libxpcom_compat.dylib }}} == XPCOM_UNO COMPILATION == === Compilation tests === To compile the xpcom_uno component I started using the following tools : OpenOffice SDK 3.0 and distribution of xulrunner-sdk (xulrunner-1.9.0.3.en-US.mac-pkg.dmg) for MacOSX. First test : {{{ for i in *cxx ; do echo $i start ; gcc -malign-natural -c -O -fPIC -fno-common \ -I /Users/djay/Gentoo/usr/include/\ -I/Volumes/Geolabs\ Rugged/BackUp/Desktop/xulrunner-sdk/include/string/\ -I../unotypes/\ -I/Volumes/Geolabs\ Rugged/BackUp/Desktop/xulrunner-sdk/sdk/include\ -I/Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/include/\ -I/Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK//include/rtl/\ -I/Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK//include/cppuhelper/\ -I/Volumes/Geolabs\ Rugged/BackUp/Desktop/xulrunner-sdk/include/xpcom/\ -I../inc\ -I. -I/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/inc\ -I/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/inc/examples\ -I../../../include\ -I/Users/djay/geolabs/Projets/IGO/HTC_fw/test/binaries/include/\ -I/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/inc/toto\ -DUNX -DGCC -DMACOSX -DCPPU_ENV=gcc3 \ -DGXX_INCLUDE_PATH=/usr/include/c++/4.0.0\ -o/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/obj/\ $i; echo $i end; done >& log }}} 1) Produce URD files : {{{ for i in /Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/idl/com/sun/star/mozilla/xpcom/*idl; do idlc -w -I$OO_SDK_HOME/idl/ -I$OO_SDK_OUT $i; done }}} 2) Produce RDB files and view informations on produced files : {{{ for i in /Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/idl/com/sun/star/mozilla/xpcom/*urd; do regmerge -v $(echo $i|sed "s:urd:rdb:g") /UCR $i regview $(echo $i|sed "s:urd:rdb:g") done }}} 3) Produce header files : {{{ cppumaker -Gc -BUCR -O$OO_SDK_OUT/inc -Tcom.sun.star.mozilla.xpcom.XUnoRuntimeEnvironment \ /Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/idl/com/sun/star/mozilla/xpcom/XUnoRuntimeEnvironment.rdb\ /Applications/OpenOffice.org.app/Contents//basis-link/ure-link/share/misc/types.rdb\ /Applications/OpenOffice.org.app/Contents//basis-link/ure-link/share/misc/services.rdb\ /Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/idl/com/sun/star/mozilla/xpcom/XUnoType.rdb\ /Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/idl/com/sun/star/mozilla/xpcom/XUnoEnum.rdb \ /Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/idl/com/sun/star/mozilla/xpcom/XUnoStruct.rdb }}} 4) Compilation of cxx files in the sources/xpcom_uno directory : {{{ for i in *cxx ; do echo $i start ; gcc -DMOZILLA_INTERNAL_API=" ZOO-1.0 " -DMOZILLA_CLIENT -DXP_UNIX -DTRACING -malign-natural -c -O -fPIC -fno-common \ -I/Users/djay/OpenOffice.org3.0_SDK/inc/ \ -I /Users/djay/Gentoo/usr/include/ \ -I/Volumes/Geolabs\ Rugged/BackUp/Desktop/xulrunner-sdk/include/string/ \ -I../unotypes/ \ -I/Volumes/Geolabs\ Rugged/BackUp/Desktop/xulrunner-sdk/sdk/include \ -I/Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK/include/ \ -I/Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK//include/rtl/ \ -I/Users/djay/geolabs/Devel/OpenOffice.org3.0_SDK//include/cppuhelper/ \ -I/Volumes/Geolabs\ Rugged/BackUp/Desktop/xulrunner-sdk/include/xpcom/ \ -I../inc \ -I. \ -I/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/inc \ -I/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/inc/examples \ -I../../../include \ -I/Users/djay/geolabs/Projets/IGO/HTC_fw/test/binaries/include/ \ -I/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/inc/toto \ -DUNX -DGCC -DMACOSX -DCPPU_ENV=gcc3 \ -DGXX_INCLUDE_PATH=/usr/include/c++/4.0.0 \ -o/Users/djay/OpenOffice.org3.0_SDK/MACOSXexample.out/obj/$(echo $i|sed "s:cxx:o:g") $i; echo $i end; done >& log }}} Compile results : * leakcheck.o * xpcomvariant.o The others don't work. The recurent error is : {{{ ../inc/xpcomreference.hxx: In member function ‘IfaceT* xpcom_uno::XpcomReference::query(OtherIfaceT*)’: ../inc/xpcomreference.hxx:180: error: ‘::IfaceT’ has not been declared ../inc/xpcomreference.hxx:180: error: ‘COMTypeInfo’ was not declared in this scope ../inc/xpcomreference.hxx:180: error: expected primary-expression before ‘int’ ../inc/xpcomreference.hxx:180: error: expected `)' before ‘int’ ../inc/xpcomreference.hxx: In member function ‘IfaceT* xpcom_uno::XpcomReference::query_throw(OtherIfaceT*)’: ../inc/xpcomreference.hxx:191: error: ‘::IfaceT’ has not been declared ../inc/xpcomreference.hxx:191: error: ‘COMTypeInfo’ was not declared in this scope ../inc/xpcomreference.hxx:191: error: expected primary-expression before ‘int’ ../inc/xpcomreference.hxx:191: error: expected `)' before ‘int’ }}}