View Full Version : [Linux/Win] Integrare OpenOffice all'interno di un programma
tomminno
21-11-2007, 12:36
Esiste un modo per integrare tramite SDK le funzionalità di visualizzazione di un documento OpenOffice?
Al momento, dovendo mostrare una presentazione in formato odp, faccio ricorso a system/CreateProcess, ciò comporta che venga visualizzato lo spash screen di OpenOffice e che venga mostrato per un istante l'editor, e questo è un comportamento non desiderato.
Inoltre ho il problema che non riesco a terminare forzatamente l'esecuzione di un processo lanciato tramite system su Linux, come potrei realizzare ciò?
edit - scusate non ci sto proprio con la testa stasera :asd:
tomminno
07-12-2007, 20:12
Certo che alla Sun sembrano scoraggiare in ogni modo l'utilizzo dell'SDK per OpenOffice.
Dopo una settimana di ricerche non sono ancora riuscito a compilare il tutto:
si parte dagli idl da compilare singolarmente tramite il comando idlc per ottenere i file urd, questi vanno poi compilati con regmerge per ottenere gli rdb ed infine bisogna usare javamaker o cppumaker per ottenere le classi java o gli header hpp.
Ma non potevano mettere il risultato direttamente nell'SDK? :muro:
Azz...una cosina semplice...
Su Linux o su Windows ? Java o C++ ?
Mi dici un po' che file ti crea alla fine ? Ho visto che il deb per Ubuntu ha già una marea di .class e di header...
tomminno
09-12-2007, 22:39
Azz...una cosina semplice...
Su Linux o su Windows ? Java o C++ ?
Mi dici un po' che file ti crea alla fine ? Ho visto che il deb per Ubuntu ha già una marea di .class e di header...
Ho intallato l'SDK su fedora, tempo fa l'installai anche su Windows ma ricordo anche lì di non aver trovato gli header. La scelta del linguaggio dipende principalmente proprio dal supporto fornito dall'SDK, per me è indifferente (anche se ho una preferenza personale per il C++).
Avrei trovato esempi di quello che mi serve in C++ e Java (ho installato il plugin per Eclipse), mi manca solo di riuscire a compilarli, spesso è codice riferito alla versione 1.x di OO.
Alla fine della procedura per quanto riguarda Java vengono fuori i .class mentre per il C++ si ottengono gli hpp
Questi sono i file .h contenuti nel pacchetto di sviluppo di office per ubuntu:
/usr/include/openoffice/bridges/remote/connection.h
/usr/include/openoffice/bridges/remote/context.h
/usr/include/openoffice/bridges/remote/remote.h
/usr/include/openoffice/com/sun/star/uno/Any.h
/usr/include/openoffice/com/sun/star/uno/Any.hxx
/usr/include/openoffice/com/sun/star/uno/genfunc.h
/usr/include/openoffice/com/sun/star/uno/genfunc.hxx
/usr/include/openoffice/com/sun/star/uno/Reference.h
/usr/include/openoffice/com/sun/star/uno/Reference.hxx
/usr/include/openoffice/com/sun/star/uno/Sequence.h
/usr/include/openoffice/com/sun/star/uno/Sequence.hxx
/usr/include/openoffice/com/sun/star/uno/Type.h
/usr/include/openoffice/com/sun/star/uno/Type.hxx
/usr/include/openoffice/cppu/helper
/usr/include/openoffice/cppu/helper/purpenv
/usr/include/openoffice/cppu/helper/purpenv/Environment.hxx
/usr/include/openoffice/cppu/helper/purpenv/Mapping.hxx
/usr/include/openoffice/cppu/macros.hxx
/usr/include/openoffice/cppu/unotype.hxx
/usr/include/openoffice/cppu/EnvDcp.hxx
/usr/include/openoffice/cppu/Enterable.hxx
/usr/include/openoffice/cppu/EnvGuards.hxx
/usr/include/openoffice/cppu/FreeReference.hxx
/usr/include/openoffice/cppu/Map.hxx
/usr/include/openoffice/cppu/Shield.hxx
/usr/include/openoffice/cppuhelper
/usr/include/openoffice/cppuhelper/implbase.hxx
/usr/include/openoffice/cppuhelper/implbase_ex.hxx
/usr/include/openoffice/cppuhelper/implbase_ex_pre.hxx
/usr/include/openoffice/cppuhelper/implbase_ex_post.hxx
/usr/include/openoffice/cppuhelper/implbase1.hxx
/usr/include/openoffice/cppuhelper/implbase2.hxx
/usr/include/openoffice/cppuhelper/implbase3.hxx
/usr/include/openoffice/cppuhelper/implbase4.hxx
/usr/include/openoffice/cppuhelper/implbase5.hxx
/usr/include/openoffice/cppuhelper/implbase6.hxx
/usr/include/openoffice/cppuhelper/implbase7.hxx
/usr/include/openoffice/cppuhelper/implbase8.hxx
/usr/include/openoffice/cppuhelper/implbase9.hxx
/usr/include/openoffice/cppuhelper/implbase10.hxx
/usr/include/openoffice/cppuhelper/implbase11.hxx
/usr/include/openoffice/cppuhelper/implbase12.hxx
/usr/include/openoffice/cppuhelper/compbase.hxx
/usr/include/openoffice/cppuhelper/compbase_ex.hxx
/usr/include/openoffice/cppuhelper/compbase1.hxx
/usr/include/openoffice/cppuhelper/compbase2.hxx
/usr/include/openoffice/cppuhelper/compbase3.hxx
/usr/include/openoffice/cppuhelper/compbase4.hxx
/usr/include/openoffice/cppuhelper/compbase5.hxx
/usr/include/openoffice/cppuhelper/compbase6.hxx
/usr/include/openoffice/cppuhelper/compbase7.hxx
/usr/include/openoffice/cppuhelper/compbase8.hxx
/usr/include/openoffice/cppuhelper/compbase9.hxx
/usr/include/openoffice/cppuhelper/compbase10.hxx
/usr/include/openoffice/cppuhelper/compbase11.hxx
/usr/include/openoffice/cppuhelper/compbase12.hxx
/usr/include/openoffice/cppuhelper/shlib.hxx
/usr/include/openoffice/cppuhelper/basemutex.hxx
/usr/include/openoffice/cppuhelper/bootstrap.hxx
/usr/include/openoffice/cppuhelper/exc_hlp.hxx
/usr/include/openoffice/cppuhelper/typeprovider.hxx
/usr/include/openoffice/cppuhelper/factory.hxx
/usr/include/openoffice/cppuhelper/component_context.hxx
/usr/include/openoffice/cppuhelper/interfacecontainer.hxx
/usr/include/openoffice/cppuhelper/interfacecontainer.h
/usr/include/openoffice/cppuhelper/component.hxx
/usr/include/openoffice/cppuhelper/propshlp.hxx
/usr/include/openoffice/cppuhelper/proptypehlp.hxx
/usr/include/openoffice/cppuhelper/propertysetmixin.hxx
/usr/include/openoffice/cppuhelper/proptypehlp.h
/usr/include/openoffice/cppuhelper/stdidlclass.hxx
/usr/include/openoffice/cppuhelper/weak.hxx
/usr/include/openoffice/cppuhelper/weakagg.hxx
/usr/include/openoffice/cppuhelper/queryinterface.hxx
/usr/include/openoffice/cppuhelper/weakref.hxx
/usr/include/openoffice/cppuhelper/servicefactory.hxx
/usr/include/openoffice/cppuhelper/implementationentry.hxx
/usr/include/openoffice/cppuhelper/access_control.hxx
/usr/include/openoffice/cppuhelper/unourl.hxx
/usr/include/openoffice/cppuhelper/extract.hxx
/usr/include/openoffice/osl/conditn.h
/usr/include/openoffice/osl/diagnose.h
/usr/include/openoffice/osl/file.h
/usr/include/openoffice/osl/doublecheckedlocking.h
/usr/include/openoffice/osl/endian.h
/usr/include/openoffice/osl/interlck.h
/usr/include/openoffice/osl/module.h
/usr/include/openoffice/osl/mutex.h
/usr/include/openoffice/osl/nlsupport.h
/usr/include/openoffice/osl/pipe.h
/usr/include/openoffice/osl/process.h
/usr/include/openoffice/osl/profile.h
/usr/include/openoffice/osl/security.h
/usr/include/openoffice/osl/semaphor.h
/usr/include/openoffice/osl/signal.h
/usr/include/openoffice/osl/socket.h
/usr/include/openoffice/osl/thread.h
/usr/include/openoffice/osl/time.h
/usr/include/openoffice/osl/util.h
/usr/include/openoffice/osl/conditn.hxx
/usr/include/openoffice/osl/diagnose.hxx
/usr/include/openoffice/osl/file.hxx
/usr/include/openoffice/osl/getglobalmutex.hxx
/usr/include/openoffice/osl/module.hxx
/usr/include/openoffice/osl/mutex.hxx
/usr/include/openoffice/osl/pipe.hxx
/usr/include/openoffice/osl/pipe_decl.hxx
/usr/include/openoffice/osl/profile.hxx
/usr/include/openoffice/osl/security.hxx
/usr/include/openoffice/osl/security_decl.hxx
/usr/include/openoffice/osl/semaphor.hxx
/usr/include/openoffice/osl/socket.hxx
/usr/include/openoffice/osl/socket_decl.hxx
/usr/include/openoffice/osl/thread.hxx
/usr/include/openoffice/registry/reader.h
/usr/include/openoffice/registry/registry.h
/usr/include/openoffice/registry/regtype.h
/usr/include/openoffice/registry/types.h
/usr/include/openoffice/registry/version.h
/usr/include/openoffice/registry/writer.h
/usr/include/openoffice/registry/reflread.hxx
/usr/include/openoffice/registry/reader.hxx
/usr/include/openoffice/registry/refltype.hxx
/usr/include/openoffice/registry/reflwrit.hxx
/usr/include/openoffice/registry/registry.hxx
/usr/include/openoffice/registry/writer.hxx
/usr/include/openoffice/rtl/alloc.h
/usr/include/openoffice/rtl/bootstrap.h
/usr/include/openoffice/rtl/byteseq.h
/usr/include/openoffice/rtl/cipher.h
/usr/include/openoffice/rtl/crc.h
/usr/include/openoffice/rtl/digest.h
/usr/include/openoffice/rtl/locale.h
/usr/include/openoffice/rtl/logfile.h
/usr/include/openoffice/rtl/math.h
/usr/include/openoffice/rtl/memory.h
/usr/include/openoffice/rtl/process.h
/usr/include/openoffice/rtl/random.h
/usr/include/openoffice/rtl/strbuf.h
/usr/include/openoffice/rtl/string.h
/usr/include/openoffice/rtl/tencinfo.h
/usr/include/openoffice/rtl/textcvt.h
/usr/include/openoffice/rtl/textenc.h
/usr/include/openoffice/rtl/tres.h
/usr/include/openoffice/rtl/unload.h
/usr/include/openoffice/rtl/uri.h
/usr/include/openoffice/rtl/ustrbuf.h
/usr/include/openoffice/rtl/ustring.h
/usr/include/openoffice/rtl/uuid.h
/usr/include/openoffice/rtl/allocator.hxx
/usr/include/openoffice/rtl/bootstrap.hxx
/usr/include/openoffice/rtl/byteseq.hxx
/usr/include/openoffice/rtl/instance.hxx
/usr/include/openoffice/rtl/locale.hxx
/usr/include/openoffice/rtl/logfile.hxx
/usr/include/openoffice/rtl/math.hxx
/usr/include/openoffice/rtl/malformeduriexception.hxx
/usr/include/openoffice/rtl/ref.hxx
/usr/include/openoffice/rtl/strbuf.hxx
/usr/include/openoffice/rtl/string.hxx
/usr/include/openoffice/rtl/tres.hxx
/usr/include/openoffice/rtl/uri.hxx
/usr/include/openoffice/rtl/ustrbuf.hxx
/usr/include/openoffice/rtl/ustring.hxx
/usr/include/openoffice/sal/alloca.h
/usr/include/openoffice/sal/config.h
/usr/include/openoffice/sal/macros.h
/usr/include/openoffice/sal/main.h
/usr/include/openoffice/sal/mathconf.h
/usr/include/openoffice/sal/types.h
/usr/include/openoffice/sal/typesizes.h
/usr/include/openoffice/sal/udkversion.h
/usr/include/openoffice/salhelper
/usr/include/openoffice/salhelper/condition.hxx
/usr/include/openoffice/salhelper/dynload.hxx
/usr/include/openoffice/salhelper/future.hxx
/usr/include/openoffice/salhelper/futurequeue.hxx
/usr/include/openoffice/salhelper/monitor.hxx
/usr/include/openoffice/salhelper/queue.hxx
/usr/include/openoffice/salhelper/refobj.hxx
/usr/include/openoffice/salhelper/simplereferenceobject.hxx
/usr/include/openoffice/salhelper/singletonref.hxx
/usr/include/openoffice/stl/config/_epilog.h
/usr/include/openoffice/stl/config/_msvc_warnings_off.h
/usr/include/openoffice/stl/config/_prolog.h
/usr/include/openoffice/stl/config/stl_apcc.h
/usr/include/openoffice/stl/config/stl_apple.h
/usr/include/openoffice/stl/config/stl_as400.h
/usr/include/openoffice/stl/config/stl_bc.h
/usr/include/openoffice/stl/config/stl_como.h
/usr/include/openoffice/stl/config/stl_confix.h
/usr/include/openoffice/stl/config/stl_dec.h
/usr/include/openoffice/stl/config/stl_dec_vms.h
/usr/include/openoffice/stl/config/stl_fujitsu.h
/usr/include/openoffice/stl/config/stl_gcc.h
/usr/include/openoffice/stl/config/stl_hpacc.h
/usr/include/openoffice/stl/config/stl_ibm.h
/usr/include/openoffice/stl/config/stl_intel.h
/usr/include/openoffice/stl/config/stl_kai.h
/usr/include/openoffice/stl/config/stl_mlc.h
/usr/include/openoffice/stl/config/stl_msvc.h
/usr/include/openoffice/stl/config/stl_mwerks.h
/usr/include/openoffice/stl/config/stl_mycomp.h
/usr/include/openoffice/stl/config/stl_sco.h
/usr/include/openoffice/stl/config/stl_select_lib.h
/usr/include/openoffice/stl/config/stl_sgi.h
/usr/include/openoffice/stl/config/stl_solaris.h
/usr/include/openoffice/stl/config/stl_sunpro.h
/usr/include/openoffice/stl/config/stl_symantec.h
/usr/include/openoffice/stl/config/stl_watcom.h
/usr/include/openoffice/stl/config/stl_wince.h
/usr/include/openoffice/stl/config/stlcomp.h
/usr/include/openoffice/stl/config/vc_select_lib.h
/usr/include/openoffice/stl/stl/debug/_debug.h
/usr/include/openoffice/stl/stl/debug/_deque.h
/usr/include/openoffice/stl/stl/debug/_hashtable.h
/usr/include/openoffice/stl/stl/debug/_iterator.h
/usr/include/openoffice/stl/stl/debug/_list.h
/usr/include/openoffice/stl/stl/debug/_slist.h
/usr/include/openoffice/stl/stl/debug/_string.h
/usr/include/openoffice/stl/stl/debug/_tree.h
/usr/include/openoffice/stl/stl/debug/_vector.h
/usr/include/openoffice/stl/stl/wrappers/_deque.h
/usr/include/openoffice/stl/stl/wrappers/_hash_map.h
/usr/include/openoffice/stl/stl/wrappers/_hash_set.h
/usr/include/openoffice/stl/stl/wrappers/_list.h
/usr/include/openoffice/stl/stl/wrappers/_map.h
/usr/include/openoffice/stl/stl/wrappers/_mmap.h
/usr/include/openoffice/stl/stl/wrappers/_set.h
/usr/include/openoffice/stl/stl/wrappers/_slist.h
/usr/include/openoffice/stl/stl/wrappers/_vector.h
/usr/include/openoffice/stl/stl/_abbrevs.h
/usr/include/openoffice/stl/stl/_algo.h
/usr/include/openoffice/stl/stl/_algobase.h
/usr/include/openoffice/stl/stl/_alloc.h
/usr/include/openoffice/stl/stl/_auto_ptr.h
/usr/include/openoffice/stl/stl/_bitset.h
/usr/include/openoffice/stl/stl/_bvector.h
/usr/include/openoffice/stl/stl/_check_config.h
/usr/include/openoffice/stl/stl/_cmath.h
/usr/include/openoffice/stl/stl/_codecvt.h
/usr/include/openoffice/stl/stl/_collate.h
/usr/include/openoffice/stl/stl/_complex.h
/usr/include/openoffice/stl/stl/_config.h
/usr/include/openoffice/stl/stl/_config_compat.h
/usr/include/openoffice/stl/stl/_config_compat_post.h
/usr/include/openoffice/stl/stl/_construct.h
/usr/include/openoffice/stl/stl/_ctraits_fns.h
/usr/include/openoffice/stl/stl/_ctype.h
/usr/include/openoffice/stl/stl/_cwchar.h
/usr/include/openoffice/stl/stl/_deque.h
/usr/include/openoffice/stl/stl/_epilog.h
/usr/include/openoffice/stl/stl/_exception.h
/usr/include/openoffice/stl/stl/_fstream.h
/usr/include/openoffice/stl/stl/_function.h
/usr/include/openoffice/stl/stl/_function_base.h
/usr/include/openoffice/stl/stl/_hash_fun.h
/usr/include/openoffice/stl/stl/_hash_map.h
/usr/include/openoffice/stl/stl/_hash_set.h
/usr/include/openoffice/stl/stl/_hashtable.c
/usr/include/openoffice/stl/stl/_hashtable.h
/usr/include/openoffice/stl/stl/_heap.c
/usr/include/openoffice/stl/stl/_heap.h
/usr/include/openoffice/stl/stl/_ios.h
/usr/include/openoffice/stl/stl/_ios_base.h
/usr/include/openoffice/stl/stl/_iosfwd.h
/usr/include/openoffice/stl/stl/_istream.h
/usr/include/openoffice/stl/stl/_iterator.h
/usr/include/openoffice/stl/stl/_iterator_base.h
/usr/include/openoffice/stl/stl/_istreambuf_iterator.h
/usr/include/openoffice/stl/stl/_iterator_old.h
/usr/include/openoffice/stl/stl/_limits.h
/usr/include/openoffice/stl/stl/_list.h
/usr/include/openoffice/stl/stl/_locale.h
/usr/include/openoffice/stl/stl/_map.h
/usr/include/openoffice/stl/stl/_messages_facets.h
/usr/include/openoffice/stl/stl/_monetary.h
/usr/include/openoffice/stl/stl/_null_stream.h
/usr/include/openoffice/stl/stl/_num_get.h
/usr/include/openoffice/stl/stl/_num_put.h
/usr/include/openoffice/stl/stl/_numeric.h
/usr/include/openoffice/stl/stl/_numpunct.h
/usr/include/openoffice/stl/stl/_ostream.h
/usr/include/openoffice/stl/stl/_ostreambuf_iterator.h
/usr/include/openoffice/stl/stl/_pair.h
/usr/include/openoffice/stl/stl/_prolog.h
/usr/include/openoffice/stl/stl/_pthread_alloc.c
/usr/include/openoffice/stl/stl/_pthread_alloc.h
/usr/include/openoffice/stl/stl/_ptrs_specialize.h
/usr/include/openoffice/stl/stl/_queue.h
/usr/include/openoffice/stl/stl/_range_errors.h
/usr/include/openoffice/stl/stl/_raw_storage_iter.h
/usr/include/openoffice/stl/stl/_relops.h
/usr/include/openoffice/stl/stl/_relops_cont.h
/usr/include/openoffice/stl/stl/_relops_template.h
/usr/include/openoffice/stl/stl/_rope.h
/usr/include/openoffice/stl/stl/_set.h
/usr/include/openoffice/stl/stl/_set_operators.h
/usr/include/openoffice/stl/stl/_site_config.h
/usr/include/openoffice/stl/stl/_slist.h
/usr/include/openoffice/stl/stl/_slist_base.h
/usr/include/openoffice/stl/stl/_sparc_atomic.h
/usr/include/openoffice/stl/stl/_sstream.h
/usr/include/openoffice/stl/stl/_tree.h
/usr/include/openoffice/stl/stl/_stack.h
/usr/include/openoffice/stl/stl/_stdio_file.h
/usr/include/openoffice/stl/stl/_stream_iterator.h
/usr/include/openoffice/stl/stl/_streambuf.h
/usr/include/openoffice/stl/stl/_streambuf_iterator.h
/usr/include/openoffice/stl/stl/_string.h
/usr/include/openoffice/stl/stl/_string_fwd.h
/usr/include/openoffice/stl/stl/_string_hash.h
/usr/include/openoffice/stl/stl/_string_io.h
/usr/include/openoffice/stl/stl/_strstream.h
/usr/include/openoffice/stl/stl/_tempbuf.h
/usr/include/openoffice/stl/stl/_threads.c
/usr/include/openoffice/stl/stl/_threads.h
/usr/include/openoffice/stl/stl/_time_facets.h
/usr/include/openoffice/stl/stl/_uninitialized.h
/usr/include/openoffice/stl/stl/_valarray.h
/usr/include/openoffice/stl/stl/_vector.h
/usr/include/openoffice/stl/stl/c_locale.h
/usr/include/openoffice/stl/stl/char_traits.h
/usr/include/openoffice/stl/stl/concept_checks.h
/usr/include/openoffice/stl/stl/msl_string.h
/usr/include/openoffice/stl/stl/type_traits.h
/usr/include/openoffice/stl/using/h
/usr/include/openoffice/stl/using/h/fstream.h
/usr/include/openoffice/stl/using/h/iomanip.h
/usr/include/openoffice/stl/using/h/iostream.h
/usr/include/openoffice/stl/using/h/ostream.h
/usr/include/openoffice/stl/using/h/strstream.h
/usr/include/openoffice/stl/using/h/streambuf.h
/usr/include/openoffice/stl/wrap_std/h
/usr/include/openoffice/stl/wrap_std/h/fstream.h
/usr/include/openoffice/stl/wrap_std/h/iostream.h
/usr/include/openoffice/stl/wrap_std/h/streambuf.h
/usr/include/openoffice/stl/wrap_std/h/strstream.h
/usr/include/openoffice/stl/algorithm
/usr/include/openoffice/stl/cmath
/usr/include/openoffice/stl/ctype.h
/usr/include/openoffice/stl/cwchar
/usr/include/openoffice/stl/exception.h
/usr/include/openoffice/stl/fstream.h
/usr/include/openoffice/stl/hash_map
/usr/include/openoffice/stl/hash_set
/usr/include/openoffice/stl/iomanip.h
/usr/include/openoffice/stl/ios.h
/usr/include/openoffice/stl/iostream.h
/usr/include/openoffice/stl/istream.h
/usr/include/openoffice/stl/locale.h
/usr/include/openoffice/stl/math.h
/usr/include/openoffice/stl/mem.h
/usr/include/openoffice/stl/mmemory.h
/usr/include/openoffice/stl/new.h
/usr/include/openoffice/stl/ostream.h
/usr/include/openoffice/stl/pthread.h
/usr/include/openoffice/stl/pthread_alloc
/usr/include/openoffice/stl/rlocks.h
/usr/include/openoffice/stl/setjmp.h
/usr/include/openoffice/stl/signal.h
/usr/include/openoffice/stl/stdarg.h
/usr/include/openoffice/stl/stddef.h
/usr/include/openoffice/stl/stdio.h
/usr/include/openoffice/stl/stdiostream.h
/usr/include/openoffice/stl/stdlib.h
/usr/include/openoffice/stl/stl_user_config.h
/usr/include/openoffice/stl/streambuf.h
/usr/include/openoffice/stl/string.h
/usr/include/openoffice/stl/strstream.h
/usr/include/openoffice/stl/time.h
/usr/include/openoffice/stl/typeinfo.h
/usr/include/openoffice/stl/wchar.h
/usr/include/openoffice/stl/wctype.h
/usr/include/openoffice/store/store.h
/usr/include/openoffice/store/types.h
/usr/include/openoffice/store/store.hxx
/usr/include/openoffice/typelib/typeclass.h
/usr/include/openoffice/typelib/typedescription.h
/usr/include/openoffice/typelib/typedescription.hxx
/usr/include/openoffice/typelib/uik.h
/usr/include/openoffice/uno/dispatcher.h
/usr/include/openoffice/uno/dispatcher.hxx
/usr/include/openoffice/uno/any2.h
/usr/include/openoffice/uno/sequence2.h
/usr/include/openoffice/uno/data.h
/usr/include/openoffice/uno/lbnames.h
/usr/include/openoffice/uno/environment.h
/usr/include/openoffice/uno/environment.hxx
/usr/include/openoffice/uno/mapping.h
/usr/include/openoffice/uno/mapping.hxx
/usr/include/openoffice/uno/threadpool.h
/usr/include/openoffice/uno/current_context.h
/usr/include/openoffice/uno/current_context.hxx
/usr/include/openoffice/uno/cuno.h
/usr/include/openoffice/uno/EnvDcp.h
/usr/include/openoffice/uno/Enterable.h
/usr/lib/openoffice/program/libcppuhelper3gcc3.so
/usr/lib/openoffice/program/libcppuhelpergcc3.so
/usr/lib/openoffice/program/libsalhelper3gcc3.so
/usr/lib/openoffice/program/libsalhelpergcc3.so
/usr/lib/openoffice/program/libuno_cppuhelpergcc3.so
/usr/lib/openoffice/program/libuno_salhelpergcc3.so
Di .class ce ne sono pochi a dire la verità.
tomminno
10-12-2007, 10:46
Nel pacchetto per fedora la cartella openoffice è presente solo in usr/lib.
Proverò con una installazione manuale.
tomminno
10-12-2007, 15:12
Ho verificato: gli header già presenti (in fedora si trovano sotto usr/lib/openoffice) non sono sufficienti per compilare un qualunque progetto che integri le funzionalità di OO.
Ad esempio in C++ è indispensabile, per la connessione a UNO, il file com/sun/star/bridge/XUnoUrlResolver.hpp
il quale è presente nell'SDK solo come idl.
E così anche per tutti gli header/classi che rappresentano una tipologia di documento.
Vabbè mi tocca creare uno script per la compilazione delle decine di idl presenti nell'SDK.
Certo che potevano anche inserirlo loro!
tomminno
12-12-2007, 21:17
Ok sono riuscito ad arrivare in fondo alla procedura che è assolutamente allucinante.
Per prima cosa vanno aggiunti al path le directory <SDKInstall>/linux/bin (/windows/bin) <OOInstall>/program.
Poi va modificata la variabile d'ambiente LD_LIBRARY_PATH inserendo <OOInstall>/program
Questo serve per poter eseguire il comando idlc presente in <SDKInstall>/linux/bin.
A questo punto bisogna andare in <SDKInstall>/idl/com/sun/star ed eseguire il comando idlc su ogni sottocartella presente in tale directory.
I parametri da usare sono: -I perchè altrimenti darebbe errori di inclusione e -O in modo da avere tutti i file urd in una stessa cartella, -C server per estrarre i commenti.
Nel mio caso ho usato questo comando su ogni cartella:
idlc -C -I/usr/lib/openoffice.org/sdk/idl -O/home/tommaso/idl *.*
In questo modo ho messo tutti gli urd in una unica cartella.
Dopodichè si uniscono gli urd generati in un unico database tramite:
regmerge regdb.rdb / *.urd
A questo punto si può usare cppumaker o javamaker.
Il problema è che se si prova ad eseguire cppumaker/javamaker sul file rdb generato si ottiene un fantastico errore:
cppumaker ERROR: cannot dump Type 'com/sun/star/presentation/XPresentation'
su qualunque tipo si provi ad estrarre dal db (nel mio caso com/sun/star/presentation/XPresentation).
Quindi bisogna prendere il file types.rdb dalla cartella <OOInstall>/program e usare regmerge per unirlo con quello creato manualmente a partire dai file idl con:
regmerge regdb.rdb / types.rdb
A questo punto cppumaker/javamaker può completare il suo lavoro e ci si ritrovano i file hpp/class da includere nel progetto.
cppumaker -O. -Tcom/sun/star/presentation/XPresentation -BUCR regdb.rdb
javamaker -O. -Tcom/sun/star/presentation/XPresentation -BUCR regdb.rdb
La proceduta mi sembra troppo allucinante per essere vera, però è l'unico modo che ho trovato per poter rendere utilizzabile l'SDK.
Se qualcuno riesce a trovare una procedura migliore...
Davvero assurdo...ma perché cavolo non distribuiscono l'SDK già pronto ? Probabilmente devono risolvere una marea di dipendenze dal sistema operativo ospite, ma non capisco cosa gli vieta di distribuirlo almeno per i SO più diffusi.
tomminno
12-12-2007, 22:14
Davvero assurdo...ma perché cavolo non distribuiscono l'SDK già pronto ? Probabilmente devono risolvere una marea di dipendenze dal sistema operativo ospite, ma non capisco cosa gli vieta di distribuirlo almeno per i SO più diffusi.
Secondo me si può fare benissimo tutto con uno script, io non sarei in grado di crearlo, ma le operazioni sono tutto sommato semplici benchè macchinose nell'insieme.
Dovrebbero inserirlo nell'SDK o per lo meno spiegare come renderlo operativo.
Anche se credo farebbero prima ad includere gli header e i class direttamente nell'SDK che non dovrebbero essere troppo legati alla macchina di sviluppo, altrimenti come si potrebbe distribuire un applicativo?
variabilepippo
12-12-2007, 22:26
Non uso OpenOffice né tanto meno il suo SDK, però per curiosità ho provato a cercare le parole OpenOffice SDK installation con Google ed il primo link della lista (http://wiki.services.openoffice.org/wiki/SDKInstallation) cita:
Installation under Windows
You need a compiler out of the Microsoft Visual Studio family (other compilers like MinGW have turned out to be hard to configure for OOo on Windows). The first thing after having installed the SDK is to launch the configureWindowsNT.bat and set all the necessary directories for proper use of the SDK. If that has been done you have already installed everything, but *wait* one very important thing you should still know of: Every time you want to run your own code or one of the SDK examples you need to launch the setsdkenv_Windows batch file from your command shell.
Installation under LINUX
Every time you want to use it you have to launch the setsdkenv_unix script for environment variables. Automating this is not a problem under UNIX.
From now on, we will always note the SDK directory installation as : <OpenOffice.org1.1_SDK>. Please don't confuse with <Ooo> which is the openoffice.org /program/ directory.
You can find a little complement of this chapter in <OpenOffice.org1.1_SDK>/docs/install.html
The OOo2.0SDK installation is done also by launching the setsdkenv_unix script but asking more information
Non so se questo risolve il problema, in caso positivo si tratta di un tipico RTFM (http://it.wikipedia.org/wiki/RTFM). ;)
tomminno
12-12-2007, 22:49
Non uso OpenOffice né tanto meno il suo SDK, però per curiosità ho provato a cercare le parole OpenOffice SDK installation con Google ed il primo link della lista (http://wiki.services.openoffice.org/wiki/SDKInstallation) cita:
Non so se questo risolve il problema, in caso positivo si tratta di un tipico RTFM (http://it.wikipedia.org/wiki/RTFM). ;)
Peccato che quegli script impostano solo le variabili di sistema, non ti generano i file da includere in una qualunque applicazione che utilizzi l'SDK di OO.
Dovrebbe essere questo il metodo giusto: http://api.openoffice.org/servlets/ReadMsg?listName=dev&msgNo=4560
Su Fedora basta fare cosi:
su -
yum install openoffice.org-sdk
cd /usr/lib/openoffice.org/sdk
sh setsdkenv_unix
cppumaker -BUCR /usr/lib/openoffice.org/program/types.rdb
cosi genera nella directory /usr/lib/openoffice.org/sdk/com/sun/star/ tutti i file headers.
Probabilmente nel pacchetto openoffice.org-sdk mettono solo gli headers essenziali, poi uno si genera quelli che gli servono, visto che in tutto sono 5000.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.