comparison kdiff3/README @ 75:08ea9b86c12c

KDiff3-0.9.91
author joachim99
date Sat, 04 Nov 2006 00:05:00 +0000
parents f7dad0aa6146
children 1184fc843210
comparison
equal deleted inserted replaced
74:069521efec1a 75:08ea9b86c12c
1 KDiff3-Readme 1 KDiff3-Readme
2 ============= 2 =============
3 3
4 Author: Joachim Eibl (joachim.eibl at gmx.de) 4 Author: Joachim Eibl (joachim.eibl at gmx.de)
5 Copyright: (C) 2002-2006 by Joachim Eibl 5 Copyright: (C) 2002-2006 by Joachim Eibl
6 KDiff3-Version: 0.9.90-Qt4 6 KDiff3-Version: 0.9.91
7 7
8 8
9 KDiff3 is a program that 9 KDiff3 is a program that
10 - compares and merges two or three input files or directories, 10 - compares and merges two or three input files or directories,
11 - shows the differences line by line and character by character (!), 11 - shows the differences line by line and character by character (!),
34 along with this program; if not, write to the Free Software 34 along with this program; if not, write to the Free Software
35 Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02111-1307 USA 35 Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02111-1307 USA
36 36
37 For details see file "COPYING". 37 For details see file "COPYING".
38 38
39 Exception from the GPL:
40 As a special exception, the copyright holder Joachim Eibl gives permission
41 to link this program with the Qt-library (commercial or non-commercial edition)
42 from Trolltech (www.trolltech.com), and he permits to distribute the resulting
43 executable, without including the source code for the Qt-library in the
44 source distribution.
45
39 46
40 Requirements & Installation: 47 Requirements & Installation:
41 The version 0.9.90-Qt4 requires Qt 4.x.y (from www.trolltech.com) for compilation. 48 Version 0.9.91 provides special support for KDE3, but it can also be
42 (Qt-version >= 4.1.2 is recommended.) 49 built without KDE3 if the Qt-libraries are available.
50 (I also test and use the program under Windows.)
51 It is now also possible to build with Qt4 (See further below).
43 52
44 You always need 53 You always need
45 - kdiff3-0.9.90-Qt4.tar.gz 54 - kdiff3-0.9.91.tar.gz
55
56 For building the KDE3-version
57 - KDE>=3.3 and QT>=3.3-libraries. (but not with KDE4)
58 - gcc, g++ with version >=3.2
59
60 For building the Qt-only-version
61 - QT-libraries (version >=3.3.0, but <4.0 or >=4.2.0).
62 (www.trolltech.com)
63 - for Un*x: gcc, g++ with version >=3.2
64 - for Windows: VC6 / VC7.1
65
66 On some distributions it will be necessary to install developer
67 packages (RPMs) that contain include files for compilation:
68 - xorg-x11-devel (or x11-devel)
69 - qt-devel
70 - kdelibs-devel
71
72 Installation for KDE3:
73 - Make sure your shell-variable QTDIR is correct. (echo $QTDIR).
74 If it doesn't contain the correct path, type
75 export QTDIR=your_path_to_qt (e.g. /usr/lib/qt3)
76 - cd into the directory kdiff3-0.9.91 and type
77 - ./configure --prefix=/opt/kde3 (your KDE3 directory here)
78 - (make clean) (Required if you already compiled once.)
79 - make (Run compilation)
80 - make install (You must have root-rights for this step.)
81
82 For details also see the generic instructions in file "INSTALL".
83
84 If some icons are not visible or don't seem right, probably the prefix
85 was wrong. Check where your KDE3 installation is located and
86 use that directory with the prefix-option of configure.
87
88 This command should tell you: kde-config --prefix
89
90 For SuSE and most distributions the prefix usually is /opt/kde3.
91 For Redhat/Fedora and Mandrake the prefix usually is /usr.
92 For a local installation, that doesn't need root rights try
93 - ./configure --prefix=$KDEHOME ($KDEHOME probably is the same as $HOME/.kde)
94 - make
95 - make install (Installs everything in $KDEHOME. No root rights required.)
96 - Run $KDEHOME/bin/kdiff3. ($KDEHOME/bin is probably not in your path.)
97 Warning: If a local installation and a global installation exist, the local
98 menu, toolbar, help etc. will be used, even if you start the global
99 executable. To avoid confusion, better remove the local version then.
100 (rm -R `find $KDEHOME -name "*kdiff3*" -not -name "kdiff3*rc"`)
101
102 On Fedora-64-bit systems the following configure-line was reported to work:
103 ./configure --prefix=`kde-config --prefix` --enable-libsuffix=64 --with-qt-libraries=/usr/lib64/qt-3.3/lib/
104 Both --enable-libsuffix=64 and -with-qt-libraries=/usr/lib64/qt-3.3/lib/ are needed;
105 without the first one it fails to find the KDE libraries,
106 and without the second one it fails to find libqt-mt
107 (strangely enough: libqt-mt is in /usr/lib64/qt-3.3/lib,
108 and "configure" tries /usr/lib64/qt-3.3/lib64)
109 If your qt-libraries are elsewhere please adapt the path accordingly.
110
111 Some secondary dependencies aren't correctly discovered by configure.
112 If e.g the a linker error appears telling you something like
113 "Can't find -lacl" this probably means that you have to install
114 libacl-devel-*.rpm etc.
115
116 If you run an older version of KDE and the make-process fails in the
117 doc- or po-directory, cd to the src-directory and run "make" there. Also run
118 "make install" there. This hopefully will create a working kdiff3-binary,
119 although without doc and language support.
120
121 Upgrading KDiff3 for KDE:
122 If you already installed an older version or KDiff3 and you have the
123 impression, that the new version doesn't work as described, you should try to
124 remove all files belonging to KDiff3 before reinstalling.
125 Try this search command to locate KDiff3-related files:
126 find $HOME/.kde /usr /opt -iname "*kdiff3*"
127 (Will take a few minutes.)
128
129
130 Building an RPM for Fedora Core (by Vadim Likhota)
131 Copy kdiff3-0.9.91.tar.gz into /usr/src/redhat/SOURCE
132 Copy kdiff3.spec into /usr/src/redhat/SPEC
133 Run rpmbuild -bb --target i686 kdiff3.spec
134 Find kdiff3-0.9.91-fc.i686.rpm in /usr/src/redhat/RPMS/I386
135
136
137 Installation for the Qt-only-platforms for Un*x:
138 (for Qt >=3.3.0 but <4.0)
139 - Make sure your shell-variable QTDIR is correct. (echo $QTDIR).
140 If it doesn't contain the correct path, type
141 export QTDIR=your_path_to_qt (e.g. /usr/lib/qt)
142 - cd into the directory kdiff3-0.9.91/src and type
143 - make -f Makefile.qt
144 - make -f Makefile.qt install (You must have root-rights for this step.)
145 (copies the files into /usr/local/bin and /usr/local/share/doc/kdiff3)
146 - Note: The file kdiff3.pro was used to generate the Makefile.qt:
147 qmake kdiff3.pro -o Makefile.qt
148 If you want to build the Qt-only version _and_ the KDE-version, do this
149 in separate directories, otherwise there will be errors.
150
151 Build for Windows:
152 Use qmake and kdiff3.pro to generate
153 an appropriate Makefile.
154 qmake kdiff3.pro -o Makefile
155
156
157 Building Kdiff3 for Mac OSX 10.3.8 (by Mark Teel)
158 --------------------------------------------------
159 1) Install Qt/Mac with thread support and static libraries.
160 2) cd .../kdiff3-0.9.91
161 3) Create a makefile for kdiff3 by executing:
162 qmake src/kdiff3.pro -o Makefile.qt
163 4) Edit Makefile.qt and add the definition "KDIFF3" to the following two lines:
164 CFLAGS = -pipe -Wall -W -Os -DKDIFF3 -DQT_NO_DEBUG ...
165 CXXFLAGS = -pipe -Wall -W -Os -DKDIFF3 -DQT_NO_DEBUG ...
166 5) Edit Makefile.qt and change the include path like so:
167 (old) INCPATH = -I/Library/qt3/mkspecs/default -Isrc ...
168 (new) INCPATH = -I/Library/qt3/mkspecs/macx-g++ -Isrc ...
169 6) Execute:
170 make -f Makefile.qt
171 7) After the build completes copy kdiff3 from the kdiff3-0.9.91 directory to
172 /Applications
173
174 ----------------------------------------------------------------
175
176 Building KDiff3 with Qt4:
177
178 Requirements & Installation:
179 The version 0.9.91 requires Qt 4.2.0 (from www.trolltech.com) for compilation.
180
181 You always need
182 - kdiff3-0.9.91.tar.gz
46 183
47 - for Un*x: gcc, g++ with version >=3.4.2 184 - for Un*x: gcc, g++ with version >=3.4.2
48 Qt-X11-libraries 185 Qt-X11-libraries
49 186
50 - for Windows: Qt-win-libs 187 - for Windows: Qt-win-libs
56 - gcc-g++-3.4.2-20040916-1.tar.gz 193 - gcc-g++-3.4.2-20040916-1.tar.gz
57 - mingw-runtime-3.9.tar.gz 194 - mingw-runtime-3.9.tar.gz
58 - mingw32-make-3.80.0-3.tar.gz 195 - mingw32-make-3.80.0-3.tar.gz
59 - w32api-3.6.tar.gz (see also the note below) 196 - w32api-3.6.tar.gz (see also the note below)
60 - gdb-5.2.1-1.exe (for debugging) 197 - gdb-5.2.1-1.exe (for debugging)
61 198
62 (Note: At the time of writing this README, the MinGW-package that was part 199 (Note: At the time of writing this README, the MinGW-package that was part
63 of qt-win-opensource-4.1.2-mingw.exe lacked the latest w32api needed for 200 of qt-win-opensource-4.1.2-mingw.exe lacked the latest w32api needed for
64 KDiff3-compilation. You will need to unpack w32api-3.6.tar.gz or newer 201 KDiff3-compilation. You will need to unpack w32api-3.6.tar.gz or newer
65 from www.mingw.org into your MinGW-directory.) 202 from www.mingw.org into your MinGW-directory.)
66 203
67 - for Mac: gcc, g++ with version >=3.4.2 204 - for Mac: gcc, g++ with version >=3.4.2
68 Qt-Mac-libraries 205 Qt-Mac-libraries
69 206
70 207
71 Note for KDE-users: 208 Note for KDE-users:
72 The version 0.9.90-Qt4 doesn't provide support for KDE-3.x 209 The version 0.9.91-Qt4 doesn't provide support for KDE-3.x
73 because KDE-3.x.y requires Qt3. 210 because KDE-3.x.y requires Qt3.
74 If you need KDE-specific features like KIO-support stick to the 211 If you need KDE-specific features like KIO-support stick to the
75 normal version 0.9.90. 212 normal version 0.9.91.
76 213
77 Build-instructions (Unix or Mac): 214 Build-instructions (Unix or Mac):
78 - Make sure your shell-variable QTDIR is correct and that 215 - Make sure your shell-variable QTDIR is correct and that
79 your path contains the Qt4-bin-directory. 216 your path contains the Qt4-bin-directory.
80 - cd into the directory kdiff3-0.9.90-Qt4/src and type 217 - cd into the directory kdiff3-0.9.91/src-QT4 and type
81 - qmake kdiff3.pro 218 - qmake kdiff3.pro
82 - make (or "gmake" for GNU-Make) 219 - make (or "gmake" for GNU-Make)
83 220
84 Build-instructions (Windows): 221 Build-instructions (Windows):
85 - Run your qtvars.bat in the Qt4-bin directory. 222 - Run your qtvars.bat in the Qt4-bin directory.
86 (This should set your QTDIR, QMAKESPEC and PATH-environment-variables.) 223 (This should set your QTDIR, QMAKESPEC and PATH-environment-variables.)
87 - cd into the directory kdiff3-0.9.90-Qt4/src and type 224 - cd into the directory kdiff3-0.9.91/src-Qt4 and type
88 - qmake kdiff3.pro 225 - qmake kdiff3.pro
89 - make (which calls either "mingw32-make" or "nmake") 226 - make (which calls either "mingw32-make" or "nmake")
90 227
91 Debugging with MinGW under Windows: 228 Debugging with MinGW under Windows:
92 - cd into the directory kdiff3-0.9.90-Qt4/src 229 - The qt-win-opensource-4.2.0-mingw.exe only installs release dlls. You will have to compile the
230 debug dlls yourself. Enter the qt-4.2.0-directory and run "configure -debug" and then "make".
231 - cd into the directory kdiff3-0.9.91/src-Qt4
93 - edit the file "Makefile.Debug" and in the LFLAGS replace "-Wl,-subsystem,windows" with "-Wl,-subsystem,console" 232 - edit the file "Makefile.Debug" and in the LFLAGS replace "-Wl,-subsystem,windows" with "-Wl,-subsystem,console"
94 (this is necessary so that gdb can send a break signal to the running program) 233 (this is necessary so that gdb can send a break signal to the running program)
95 - make debug (create a debuggable executable) 234 - make debug (create a debuggable executable)
96 - gdb debug\kdiff3.exe 235 - gdb debug\kdiff3.exe
97 - At the "(gdb)"-prompt type "run" and enter to start. 236 - At the "(gdb)"-prompt type "run" and enter to start.
101 - I've tested graphical gdb-frontends too: 240 - I've tested graphical gdb-frontends too:
102 1. Insight (also from mingw.org) worked until I wanted to interrupt the program for setting breakpoints. 241 1. Insight (also from mingw.org) worked until I wanted to interrupt the program for setting breakpoints.
103 2. Dev-Cpp: The debugger said that the app crashed before even launching it. 242 2. Dev-Cpp: The debugger said that the app crashed before even launching it.
104 Result: For Windows I recommend gdb on the console. Please tell me when things have improved! 243 Result: For Windows I recommend gdb on the console. Please tell me when things have improved!
105 244
245 (End of KDiff3 with Qt4-instructions)
246 ------------------------------------------------------------------------
247
248
106 Start from commandline: 249 Start from commandline:
107 - Comparing 2 files: kdiff3 file1 file2 250 - Comparing 2 files: kdiff3 file1 file2
108 - Merging 2 files: kdiff3 file1 file2 -o outputfile 251 - Merging 2 files: kdiff3 file1 file2 -o outputfile
109 - Comparing 3 files: kdiff3 file1 file2 file3 252 - Comparing 3 files: kdiff3 file1 file2 file3
110 - Merging 3 files: kdiff3 file1 file2 file3 -o outputfile 253 - Merging 3 files: kdiff3 file1 file2 file3 -o outputfile