cannam@89: liblo is a lightweight library that provides an easy to use implementation of cannam@89: the OSC protocol. For more information about the OSC protocol, please see: cannam@89: cannam@89: - http://www.cnmat.berkeley.edu/OpenSoundControl/ cannam@89: - http://www.opensoundcontrol.org/ cannam@89: cannam@89: cannam@89: The official liblo homepage is here: cannam@89: cannam@89: - http://liblo.sourceforge.net/ cannam@89: cannam@89: liblo is portable to most UNIX systems (including OS X) and Windows. It is cannam@89: released under the GNU Lesser General Public Licence (LGPL). cannam@89: cannam@89: cannam@89: --- cannam@89: cannam@89: cannam@89: To build and install liblo, read INSTALL in the main liblo directory. cannam@89: liblo is configured as a dynamically-linked library. To use liblo cannam@89: in a new application, you should install liblo with "make install" cannam@89: so that the liblo library can be located by your application. cannam@89: cannam@89: To build with MS Visual Studio on Windows, first run the premake4.exe cannam@89: application in the build directory with an argument describing which cannam@89: IDE you are using. This will generate project and solution files. cannam@89: cannam@89: See examples for example source code for a simple client and two cannam@89: servers: cannam@89: cannam@89: - example_server.c uses lo_server_thread_start() to create cannam@89: a liblo server in an separate thread. cannam@89: cannam@89: - nonblocking_server_example.c uses select() to wait for either cannam@89: console input or OSC messages, all in a single thread. cannam@89: cannam@89: - example_client.c uses liblo to send OSC messages to a server. cannam@89: cannam@89: These examples will work without installing liblo. This is accomplished by a shell script. For example, examples/client_example is a shell cannam@89: script that runs the "real" program examples/.libs/example_client. cannam@89: Because of this indirection, you cannot run example_client with cannam@89: a debugger. cannam@89: cannam@89: To debug applications using liblo, one option is to include all the liblo source code in the application rather than linking with the liblo library. For more information about this, please see the libtool's manual: cannam@89: cannam@89: http://www.gnu.org/software/libtool/manual.html#Debugging-executables cannam@89: cannam@89: cannam@89: --- cannam@89: cannam@89: cannam@89: IPv6 NOTICE: cannam@89: liblo was written to support both IPv4 and IPv6, however it has caused various problems along the way because most of the currently available OSC applications cannam@89: like Pd and SuperCollider doesn't listen on ipv6 sockets. IPv6 is currently disabled by default, but you can enable it using ./configure --enable-ipv6