Personal tools
The Open Lighting Project has moved!

We've launched our new site at www.openlighting.org. This wiki will remain and be updated with more technical information.

Difference between revisions of "Libartnet on Windows"

From wiki.openlighting.org

Jump to: navigation, search
m
Line 16: Line 16:
 
  git clone http://www.nomis52.net/git/libartnet
 
  git clone http://www.nomis52.net/git/libartnet
  
== Build ==
+
== CHECK ==
  
 
edit libartnet/configure.in.
 
edit libartnet/configure.in.
  
add AC_LIBTOOL_WIN32_DLL macro before AC_PROG_LIBTOOL
+
add AC_LIBTOOL_WIN32_DLL macro before AC_PROG_LIBTOOL if not present
  
  
Line 37: Line 37:
 
../../lib/autoconf/status.m4:305: AC_CONFIG_FILES is expanded from...
 
../../lib/autoconf/status.m4:305: AC_CONFIG_FILES is expanded from...
 
configure.in:76: the top level
 
configure.in:76: the top level
 +
 +
 +
edit libartnet/artnet/Makefile.am, and check if libartnet_la_LDFLAGS look like this
 +
 +
libartnet_la_LDFLAGS = -no-undefined -liphlpapi -lnetapi32 -lcap -lws2_32 -ldpnet -version-info 1:0:0
 +
 +
 +
 +
== Build ==
 +
 +
now go to libartnet
 +
 +
$ cd libartnet
 +
 +
launch reconf script (autotools where installed in/c/MinGW, so i pass this prefix)
 +
 +
$ reconf --prefix=/c/MinGW/
 +
configure.in:14: installing `./config.guess'
 +
configure.in:14: installing `./config.sub'
 +
configure.in:7: installing `./install-sh'
 +
configure.in:15: required file `./ltmain.sh' not found
 +
configure.in:7: installing `./missing'
 +
artnet/Makefile.am: installing `./depcomp'
 +
 +
libtoolize everything to copy ./ltmain.sh
 +
 +
$ libtoolize --force --copy
 +
libtoolize: putting auxiliary files in `.'.
 +
libtoolize: copying file `./ltmain.sh'
 +
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and
 +
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
 +
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
 +
 +
(i didn't set AC_CONFIG_MACRO_DIR([m4]) neither ACLOCAL_AMFLAGS)
 +
 +
re-launch reconf script
 +
 +
$ reconf --prefix=/c/MinGW/
 +
 +
compile everything
 +
 +
$ ./configure --prefix=/c/MinGW/ && make && make install

Revision as of 09:51, 30 June 2009

This HOWTO outlines a method for compiling libartnet on Windows using MinGW.

you'll need msys, mingw and autotools installed.

         o autoconf 
         o automake
         o libtool
         

This is the biggest part of the job.


Download Libartnet

Sources (via git) - this will download latest libartnet version

git clone http://www.nomis52.net/git/libartnet

CHECK

edit libartnet/configure.in.

add AC_LIBTOOL_WIN32_DLL macro before AC_PROG_LIBTOOL if not present


         o AC_PROG_CC 
         o AC_PROG_INSTALL
         o AC_PROG_LN_S
         o AC_PROG_MAKE_SET
         o AC_LIBTOOL_WIN32_DLL
         o AC_PROG_LIBTOOL


i did this with Bloc-notes because the way the file is recorded is important. you don't want \cr\lf end of lines, you just want \lf. otherwise, you'll get errors like

' is already registered with AC_CONFIG_FILES. ../../lib/autoconf/status.m4:305: AC_CONFIG_FILES is expanded from... configure.in:76: the top level


edit libartnet/artnet/Makefile.am, and check if libartnet_la_LDFLAGS look like this

libartnet_la_LDFLAGS = -no-undefined -liphlpapi -lnetapi32 -lcap -lws2_32 -ldpnet -version-info 1:0:0


Build

now go to libartnet

$ cd libartnet

launch reconf script (autotools where installed in/c/MinGW, so i pass this prefix)

$ reconf --prefix=/c/MinGW/
configure.in:14: installing `./config.guess'
configure.in:14: installing `./config.sub'
configure.in:7: installing `./install-sh'
configure.in:15: required file `./ltmain.sh' not found
configure.in:7: installing `./missing'
artnet/Makefile.am: installing `./depcomp'

libtoolize everything to copy ./ltmain.sh

$ libtoolize --force --copy
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.

(i didn't set AC_CONFIG_MACRO_DIR([m4]) neither ACLOCAL_AMFLAGS)

re-launch reconf script

$ reconf --prefix=/c/MinGW/

compile everything

$ ./configure --prefix=/c/MinGW/ && make && make install