/[svn]/libgig/trunk/README
ViewVC logotype

Contents of /libgig/trunk/README

Parent Directory Parent Directory | Revision Log Revision Log


Revision 650 - (show annotations) (download)
Wed Jun 15 12:51:12 2005 UTC (14 years, 7 months ago) by schoenebeck
File size: 5129 byte(s)
updated README (require automake >= 1.5 for 'make -f Makefile.cvs')

1 Content
2 =======
3 libgig actually consists of three parts:
4
5 - RIFF classes (RIFF.h, RIFF.cpp): Provides convenient methods to parse and
6 access arbitrary RIFF files.
7 - DLS classes (DLS.h, DLS.cpp): They're using the RIFF classes to parse
8 DLS (Downloadable Sounds) Level 1 and 2
9 files and provide abstract access to the
10 data.
11 - gig classes (gig.h, gig.cpp): These are based on the DLS classes and
12 provide the necessary extensions for
13 the Gigasampler file format.
14
15 Beside the actual library there are four example applications:
16
17 gigdump: Demo app that prints out the content of a .gig file.
18 gigextract: Extracts samples from a .gig file.
19 dlsdump: Demo app that prints out the content of a DLS file.
20 rifftree: Tool that prints out the RIFF tree of an arbitrary RIFF
21 file.
22
23 Requirements
24 ============
25
26 POSIX systems (e.g. Linux, OS X):
27 ---------------------------------
28
29 You need at least to have libtool installed to be able to build the
30 library with "./configure && make".
31
32 Additionally you need to have either libaudiofile (>= 0.2.3) or
33 libsndfile (>= 1.0.2) installed which is mandatory to be able to compile
34 the 'gigextract' example application. But of course 'gigextract' is still
35 just an example application, so it would make sense to compile it only if
36 one of those libraries are available. That would remove that hard
37 dependency to those two libs. But that's not a priority for me now.
38 Note: for Windows systems only libsndfile is available.
39
40 If you want to regenerate all autotools build files (that is configure,
41 Makefile.in, etc.) then you need to have automake (>= 1.5) and autoconf
42 installed.
43
44 Non-POSIX systems (e.g. Windows):
45 ---------------------------------
46
47 If you don't have a POSIX system, you have to set 'POSIX' to '0' in RIFF.h.
48 Instead of using POSIX calls then standard C calls will be used for file
49 access. This applies e.g. to Windows systems. I would appreciate if
50 somebody sends me his MS Visual Studio / .NET, Borland C++ Builder or
51 Apple XCode project file! This might help others to conveniently compile
52 libgig on those platforms as well.
53
54 Compiling
55 =========
56
57 You can either compile the sources and install the library directly on
58 your system or you can create Redhat or Debian packages.
59
60 a) Compiling and installing directly
61
62 Call './configure && make' on the console to compile the library, all
63 tools and demo applications, documentation and install them with
64 'make install'. The latter has to be called as root.
65
66 If you are compiling from CVS you have to call 'make -f Makefile.cvs'
67 to generate all autotools build files before calling
68 './configure && make'.
69
70 You can use 'make distclean' and probably 'make -f Makefile.cvs clean'
71 to clean up everything again. The latter will also delete all automatic
72 generated autools build files.
73
74 b) Creating Debian packages
75
76 Use 'dpkg-buildpackage -rfakeroot -b' to compile and create the Debian
77 packages. This will generate 3 Debian packages:
78
79 libgig: Contains the shared library files.
80 libgig-dev: Contains the header files and documentation for building
81 applications using libgig.
82 gigtools: Contains the tools and demo applications.
83
84 You can use 'fakeroot debian/rules clean' to clean up everything again.
85
86 c) Creating Redhat packages
87
88 You need to have the rpmbuild tool installed and properly configured to
89 create RPM packages. To create the RPM packages do the following:
90
91 * Get .spec file generated by ./configure and edit it as appropriate.
92
93 * Copy the source tarball to "/usr/src/<rpmdir>/SOURCES" directory,
94 where <rpmdir> is dependent to the system you are using. For SuSE
95 <rmpdir> will be "packages", for Mandrake <rpmdir> is "RPM" and for
96 Redhat / Fedora <rpmdir> always equals "redhat".
97
98 * Build the rpm(s) by invoking 'rpmbuild -bb <specfile>' from the
99 command line.
100
101 On success, the resulting rpm(s) can usually be found under the proper
102 "/usr/src/<rpmdir>/RPMS/<arch>" directory.
103
104 API Documentation
105 =================
106
107 If you have Doxygen installed you can generate the API documentation by
108 running 'make docs' in the sources' top level directory. The API
109 documentation will be generated in the 'doc' subdirectory.
110
111 Patches
112 =======
113 If you find bugs or have improvements, your patches are always welcome!
114 Send them either directly to me or to the LinuxSampler developer's mailing
115 list <linuxsampler-devel@lists.sourceforge.net>.
116
117 Credits
118 =======
119 The initial library was based on the reverse engineering effort of
120 Paul Kellett and Ruben van Royen. We owe current support for the quite new
121 Gigasampler v3 format to Andreas Persson. Please also have a look at the
122 ChangeLog for all those who contributed. Thanks for your great work!
123
124 Christian Schoenebeck <cuse@users.sourceforge.net>

  ViewVC Help
Powered by ViewVC