User Tools

Site Tools


compilingwithmingw

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
compilingwithmingw [2009/09/05 11:33] megadiscmancompilingwithmingw [2011/04/11 13:04] (current) glaubitz
Line 2: Line 2:
  
 To compile yourself: To compile yourself:
-  - Download [[ftp://ftp.trolltech.com/qt/source|Qt]] development kit, [[http://www.cmake.org|cmake]] and install; install Qt with the supplied MinGW into C:\MinGW+  - Download [[http://qt.nokia.com/downloads|Qt development kit]] (choose "Go LGPL", then click on "Qt SDK for Windows"and install in a directory of your choice (default: C:\2010.xx.x , where 2010.xx.x is the version of your Qt installation) MinGW will be installed in Qt directory automatically 
 +  - Add some paths to your environment variables: <QtDir>\bin;<QtDir>\qt\bin;<QtDir>\mingw\bin (<QtDir> means the directory where Qt is installed, usually C:\2010.xx.x)
   - Download and install [[http://code.google.com/p/msysgit/|Git for Windows]]   - Download and install [[http://code.google.com/p/msysgit/|Git for Windows]]
-  - Download the pre-compiled dependencies and extract them into the MinGW-root created by Qt-Installation (C:\MinGW)+  - Download the pre-compiled dependencies and extract them into the MinGW-root created by Qt-Installation
   - Get the current sources (from git)   - Get the current sources (from git)
   - run ''qmake -r'' in main directory (will build the debug configuration which is faster to build, but uses **big** dll files; use ''qmake -r CONFIG+=release'' for the release configuration)   - run ''qmake -r'' in main directory (will build the debug configuration which is faster to build, but uses **big** dll files; use ''qmake -r CONFIG+=release'' for the release configuration)
Line 12: Line 13:
  
 To test QHiMDTransfer: To test QHiMDTransfer:
-  - Obtain Qt runtime libs (if you don't already have them installed: these two dlls should be enough: [[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/qtdllpack.zip|qtdllpack.zip]] with QtGui4.dll and QtCore4.dll). + 
-  Obtain [[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/dllpack.zip|precompiled lib bundle]], extract to some dir in you Windows search path or in the same directory as the main executableThis pack has last been updated on September 2009, and now includes taglib.dll. Please redownload if you don't have it yet. +Download and install [[http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/qhimdtransfer-win.exe|QHiMDTransfer]] windows self installerUpdated EXE file (now with recorder autodetection!) at [[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/himd-executables.zip|zipped QHiMDTransfer.exe]], will be merged to the installer soon.
-  - Obtain the [[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/himd-executables.zip|QHiMDTransfer and himdtest]] executable+
  
 ===== Pre-Compiled dependencies ===== ===== Pre-Compiled dependencies =====
-Download everything and extract into your mingw root. It usually is ''C:\MinGW''. To run QHiMDTransfer, you just need the files from the runtime column. To compile QHiMDTransfer, you also need the development stuff. MinGW automatically gets installed if you install the [[http://www.qtsoftware.com/downloads|Qt development kit]] for Windows.+Download everything and extract into your mingw root. It is ''<QtDir>\mingw'' (<QtDir> means the directory where Qt is installed, usually C:\2010.xx.x). To run QHiMDTransfer, you just need the files from the runtime column. To compile QHiMDTransfer, you also need the development stuff. MinGW automatically gets installed if you install the [[http://www.qtsoftware.com/downloads|Qt development kit]] for Windows.
  
 ^ ^ runtime ^ development files ^ ^ ^ runtime ^ development files ^
 |libmad (compiled by us) |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmad-runtime.zip|libmad-runtime.zip]]|[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmad-devel.zip|libmad-devel.zip]]| |libmad (compiled by us) |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmad-runtime.zip|libmad-runtime.zip]]|[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmad-devel.zip|libmad-devel.zip]]|
 |libmcrypt (compiled by us) |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmcrypt-runtime.zip|libmcrypt-runtime.zip]]|[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmcrypt-devel.zip|libmcrypt-devel.zip]]| |libmcrypt (compiled by us) |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmcrypt-runtime.zip|libmcrypt-runtime.zip]]|[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/libmcrypt-devel.zip|libmcrypt-devel.zip]]|
-|taglib (official release from musicbrainz.org) |[[ftp://ftp.musicbrainz.org/pub/musicbrainz/users/luks/taglib/taglib-1.5-mingw-bin.zip|taglib-1.5-mingw-bin.zip]]| (development files included in runtime)| +|taglib (compiled by us) |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/taglib-runtime.zip|taglib-runtime.zip]]|[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/taglib-devel.zip|taglib-devel.zip]]| 
-|taglib additional .pc file | |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/taglib-pc.zip|taglib-pc.zip]]| +|glib (official release for mingw) |[[http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib_2.24.1-1_win32.zip|glib_2.24.1-1_win32.zip]]|[[http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib-dev_2.24.1-1_win32.zip|glib-dev_2.24.1-1_win32.zip]]|
-|glib (official release for mingw) |[[http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.20/glib_2.20.1-1_win32.zip|glib_2.20.1-1_win32.zip]]|[[http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.20/glib-dev_2.20.1-1_win32.zip|glib-dev_2.20.1-1_win32.zip]]|+
 |gettext (release for mingw, offered by the gnome project) |[[http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-0.17-1.zip|gettext-runtime-0.17-1.zip]]|[[http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-dev-0.17-1.zip|gettext-runtime-dev-0.17-1.zip]]| |gettext (release for mingw, offered by the gnome project) |[[http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-0.17-1.zip|gettext-runtime-0.17-1.zip]]|[[http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-dev-0.17-1.zip|gettext-runtime-dev-0.17-1.zip]]|
-|pkg-config (release for mingw, offered by the gnome project)| |[[http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config-0.23-2.zip|pkg-config-0.23-2.zip]]|+|pkg-config (release for mingw, offered by the gnome project)| |[[http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip|pkg-config-0.23-3_win32.zip]]|
 |sox libraries(static)| |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/sox-devel.zip|sox-devel.zip]]| |sox libraries(static)| |[[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/sox-devel.zip|sox-devel.zip]]|
 +|zlib (official release) |[[http://gnuwin32.sourceforge.net/downlinks/zlib-bin-zip.php|zlib-bin.zip]]| [[http://gnuwin32.sourceforge.net/downlinks/zlib-lib-zip.php|zlib-lib.zip]]*|
 +|libid3tag | | [[http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/libid3tag_mingw32.zip|libid3tag_mingw32.zip
 +]]|
 +
 +* Note: you need the zlib development files only for recompiling taglib, **not** for recompiling QHiMDTransfer
  
 ===== Rebuild instructions for GPL reasons ===== ===== Rebuild instructions for GPL reasons =====
Line 99: Line 103:
 zip ../../sox-devel.zip -@ < manifest/sox-devel.mft zip ../../sox-devel.zip -@ < manifest/sox-devel.mft
 </code> </code>
 +
 +==== Compile libtag in Windows (using MinGW) ====
 +This has been done manually, so there is no ready-made script for it.
 +
 +  - Get the zlib development files (linked above) and put them into your MinGW path.
 +  - Get [[http://developer.kde.org/~wheeler/files/src/taglib-1.6.3.tar.gz|taglib-1.6.3.tar.gz]], local copy at [[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/taglib-1.6.3.tar.gz|taglib-1.6.3.tar.gz]] for GPL reasons (I am distributing a binary)
 +  - Apply this patch to the CMakeLists.txt to help cmake find zlib: [[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/taglib-cmake.diff|taglib-cmake.diff]]
 +  - run ''cmake -G "MinGW Makefiles"'' to create the Makefiles
 +  - run ''mingw32-make'' to build libtag
 +  - run ''mingw32-make install'' to install (default destination: ''%Program Files%\taglib'')
 +  - run ''strip'' on libtag.dll to reduce the size by removing debugging symbols
 +  - put libtag.dll into a zip file to obtain the "runtime" zip file linked above.
 +  - We don't need the C bindings, so you can remove ''lib\taglib_c.dll.a'', ''lib\pkgconfig\taglib_c.pc'', ''include\tag_c.h''
 +  - Add the missing pkg-config file from [[http://users.physik.fu-berlin.de/~mkarcher/mingwstuff/taglib.pc|taglib.pc]] into ''lib\pkgconfig''
 +  - pack the contents of ''include'' and ''lib'' to get ''taglib-devel.zip''
 +
compilingwithmingw.1252150424.txt.gz · Last modified: 2009/09/05 11:33 by megadiscman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki