fcea475bb5
Work in progress. Does not work properly yet. |
||
---|---|---|
.. | ||
.gitignore | ||
AUTHORS | ||
ChangeLog | ||
configure.ac | ||
Connect.cpp | ||
COPYING | ||
INSTALL | ||
LoadTest.cpp | ||
LoadTest.hpp | ||
LOKitClient.cpp | ||
LOKitHelper.hpp | ||
LOOLProtocol.cpp | ||
LOOLProtocol.hpp | ||
LOOLSession.cpp | ||
LOOLSession.hpp | ||
LOOLWSD.cpp | ||
LOOLWSD.hpp | ||
Makefile.am | ||
NEWS | ||
protocol.txt | ||
README | ||
setup-sys-chroot | ||
TileCache.cpp | ||
TileCache.hpp | ||
TODO | ||
Util.cpp | ||
Util.hpp |
LibreOffice On-Line WebSocket server ==================================== Installation ------------ LibreOffice On-Line WebSocket server has the following dependencies: * libpng * Poco library: http://pocoproject.org/index.html. Poco can be built with ./configure --prefix=/opt/poco && make install, but distro packages exist too. On openSUSE, you can use: zypper ar http://download.opensuse.org/repositories/devel:/libraries:/c_c++/openSUSE_13.2/devel:libraries:c_c++.repo zypper in poco Building -------- loolwsd uses autoconf/automake, so build using the usual: autoreconf automake --add-missing ./configure --enable-silent-rules --with-lokit-path=<...>/include make where <...> is the location of the LibreOffice source tree. If you have self-built Poco, add the following to ./configure: --with-poco-includes=<...>/include --with-poco-libs=<...>/lib If you have the Poco debugging libraries (eg. you have a self-built Poco), you can add --enable-debug to the configure options for additional debugging. For Windows, a proper VS2013 project is needed. There is still unconditional debugging output etc. This is a work in progress. Running ------- Run the loolwsd in the daemon mode: ./loolwsd --lopath=<...>/instdir/program and connect loleaflet to that (see loleaflet/README for more info). Again, <...> is location of the LibreOffice source tree with a built LibreOffice. This is work in progress, and consequently needs the latest LibreOffice master. Run loolwsd for instance like this, to run it the way it is supposed to eventually be run "for real": ./loolwsd --systemplate=/home/tml/lo/master/lool-sys-template --lotemplate=/home/tml/lo/master/instdir --childroot=/home/tml/lo/master/lool-child-root The lool-sys-template directory tree above is something set up using the setup-sys-chroot script here. Improvements to that script are very likely needed on various distros. Also, it you plan to hack on this, you probably want to familiarize yourself with loolwsd's --test and --numprespawns options, and the 'connect' test program. For interactive testing, you can use the loolwsd --test switch, or you can use the 'connect' program. Both accept "commands" from the protocol on standard input. For instance: (echo load foo.odt; echo tile width=500 height=500 tileposx=0 tileposy=0 tilewidth=10000 tileheight=10000; sleep 10) | ./loolwsd --systemplate=/home/tml/lo/master/lool-sys-template --lotemplate=/home/tml/lo/master/instdir --childroot=/home/tml/lo/master/lool-child-root The handling of termination is a bit fragile, occasionally it dumps core somewhere in LO code when quitting. Don't be scared, work in progress. Protocol description -------------------- See protocol.txt for a description of the protocol to be used over the websocket.