aboutsummaryrefslogtreecommitdiffhomepage
path: root/INSTALL
blob: fe1ed48d3efe783c1394b8b436c17d9613671499 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
################################
#                              #
# INSTALL file for EasyTAG 2.1 #
#                              #
################################
Last update: 2007/05/07


1. Requirements :
=================

 - glib version highter than 2.8.0 (http://www.gtk.org) (Recommended: gtk+-2.8.4)
 - GTK version highter than 2.4.1 (http://www.gtk.org) (Recommended: gtk+-2.4.14)
 - id3lib version highter than 3.7.12 (http://id3lib.sourceforge.net) (Recommended: id3lib-3.8.3)
 - libogg and libvorbis (http://www.vorbis.com) (if not deactivated by './configure --disable-ogg')
 - flac (http://flac.sourceforge.net) (if not deactivated by './configure --disable-flac')
 - libmp4v2 (http://mp4v2.googlecode.com/) (if not deactivated by './configure --disable-mp4') (Recommended: libmp4v2-1.9.0)
 - wavpack (http://www.wavpack.com/) (if not deactivated by './configure --disable-wavpack')
 - libc 6 (glibc 2.1) or better
 - gettext (if not deactivated by './configure --disable-nls')


2. Compilation Instructions :
=============================

 2.1. Before to compile EasyTAG you need to install some libraries.

  2.1.1. To install id3lib :
 - recompile sources of id3lib (id3lib-3.x.x.tar.gz) (Recommended),
 - or install id3lib-3.x.x.i386.rpm and id3lib-devel-3.x.x.i386.rpm
   then run the command 'ldconfig' to update shared library symlinks.
   
   (Nota: to see if links have been updated, run the command 'ldconfig -p|grep libid3'
          if all is ok, it'll return lines like this :
             libid3.so (libc6) => /usr/lib/libid3.so
             libid3-3.8.so.2 (libc6) => /usr/lib/libid3-3.8.so.2 )

  2.1.2. To install libogg and libvorbis (http://www.vorbis.com) :

    Follow the same procedure as id3lib with the following packages :
        - http://fatpipe.vorbis.com/files/1.0/unix/libogg-1.0.tar.gz
        - http://fatpipe.vorbis.com/files/1.0/unix/libogg-1.0-1.i386.rpm
        - http://fatpipe.vorbis.com/files/1.0/unix/libogg-devel-1.0-1.i386.rpm
        
        - http://fatpipe.vorbis.com/files/1.0/unix/libvorbis-1.0.tar.gz
        - http://fatpipe.vorbis.com/files/1.0/unix/libvorbis-1.0-1.i386.rpm
        - http://fatpipe.vorbis.com/files/1.0/unix/libvorbis-devel-1.0-1.i386.rpm

  2.1.3. To install flac (http://flac.sourceforge.net) :

  2.1.4. To install faad2 (http://www.audiocoding.com/) :
        Else, you can install MPEG4IP (http://mpeg4ip.net/)

 2.2. Unpack the sources of EasyTAG with

    > tar xfvz easytag-x.y.z.tar.gz
(x.y.z represents the version of package, for example : 0.27.1) 

 2.3. Change into the new directory

    > cd easytag-x.y.z/

 2.4. Compile and install the program

    > ./configure
    > make
    # make install (You need root privileges)

Notes : 
 - If you want to compile EasyTAG with gcc3.x, you MUST install a version of id3lib compiled
with the same version of the compiler.
 - If you have the both versions of gcc installed (2.9x and 3.x), use the command './configure CC=gcc3'
for compiling with gcc3.

You may now run the program by simply typing "easytag".
(Of course the directory in which you installed it (usually /usr/local/bin) has to 
be in your PATH)



3. RPM Building Instructions (RedHat 6.x 7.x) :
===============================================

If you prefer manipulate a RPM, you can build it with the following commands:

 3.1. Build the RPM

    # rpm -tb easytag-x.y.z.tar.gz
   or
    # rpm --rebuild easytag-x.y.z.src.rpm
   or
    copy easytag-x.y.z.tar.gz into directory /usr/src/redhat/SOURCES, get easytag.spec
    into tarball, and run :
        # rpm -bb easytag.spec

 3.2. If succeed, you will found the rpm in /usr/src/redhat/RPM/i386/



4. RPM Building Instructions (RedHat 8.x 9) :
=============================================

If you prefer manipulate a RPM, you can build it with the following commands:

 4.1. Build the RPM

    # rpmbuild -tb easytag-x.y.z.tar.gz
   or
    # rpmbuild --rebuild easytag-x.y.z.src.rpm
   or
    copy easytag-x.y.z.tar.gz into directory /usr/src/redhat/SOURCES, get easytag.spec
    into tarball, and run:
        # rpmbuild -bb easytag.spec

 4.2. If succeed, you will found the rpm in /usr/src/redhat/RPM/i386/



5. Adding a new translation file to EasyTAG :
=============================================
All catalogs are placed into po/ directory and are named as the following: fr.po for 
France, de.po for Germany, and so on.

The catalogs which will be compiled with EasyTAG are set into configure.in file, into
field ALL_LINGUAS. If you have created a new translation file for your location, and 
want to test it, add the corresponding code (xx for file xx.po) to this field.

Then run the script: ./autogen.sh before to recompile program (see instructions of 
paragraph 2).


6. Applying a patch :
=====================

 6.1. Unpack the sources (see 2.2),
 6.2. Go into the directory where you unpack sources (the parent directory of easytag-x.y.z directory)
 6.3. Put the patch file in this directory
 6.4. Apply the patch:
   for example:

    > cat patch_easytag_027_027a.diff | patch -p0   (if patch file was named : patch_easytag_027_027a.diff)

(Note: the pacth file (of above example) is a diff file made with command:
       diff -ruN easytag-0.27/ easytag-0.27a/ > patch_easytag_027_027a.diff
       in the directory where are locate easytag-0.4 and easytag-0.4a directories)
 6.5. Recompile program (see 2.3 + 2.4).


7. Segfault occurs when running EasyTAG? :
==========================================
 The best way to allow us to fix the problem, is to send back a backtrace :
 
 7.1. Be sure that core files are availables
    If 'ulimit -c' returns 0, then run the command 'ulimit -c unlimited'
 7.2. Get the backtrace with 'gdb easytag core' (note that on some systems, the
    core file is suffixed by the pid. So use 'core._pid_number_' instead of only
    'core').
    
    > gdb easytag core._pid_number_
    gdb> bt
    gdb> ...
    gdb> l
    gdb> ...