joachim99@2
|
1 KDiff3-Readme
|
joachim99@2
|
2 =============
|
joachim99@2
|
3
|
joachim99@69
|
4 Author: Joachim Eibl (joachim.eibl at gmx.de)
|
joachim99@69
|
5 Copyright: (C) 2002-2006 by Joachim Eibl
|
joachim99@73
|
6 KDiff3-Version: 0.9.90-Qt4
|
joachim99@2
|
7
|
joachim99@2
|
8
|
joachim99@2
|
9 KDiff3 is a program that
|
joachim99@53
|
10 - compares and merges two or three input files or directories,
|
joachim99@2
|
11 - shows the differences line by line and character by character (!),
|
joachim99@2
|
12 - provides an automatic merge-facility and
|
joachim99@2
|
13 - an integrated editor for comfortable solving of merge-conflicts
|
joachim99@53
|
14 - has support for KDE-KIO (ftp, sftp, http, fish, smb)
|
joachim99@53
|
15 - and has an intuitive graphical user interface.
|
joachim99@53
|
16
|
joachim99@53
|
17
|
joachim99@53
|
18 Do you want help translating? Read the README in the po-subdirectory!
|
joachim99@2
|
19
|
joachim99@2
|
20
|
joachim99@2
|
21 Licence:
|
joachim99@2
|
22 GNU GENERAL PUBLIC LICENSE, Version 2, June 1991
|
joachim99@2
|
23 This program is free software; you can redistribute it and/or modify
|
joachim99@2
|
24 it under the terms of the GNU General Public License as published by
|
joachim99@2
|
25 the Free Software Foundation; either version 2 of the License, or
|
joachim99@2
|
26 (at your option) any later version.
|
joachim99@2
|
27
|
joachim99@2
|
28 This program is distributed in the hope that it will be useful,
|
joachim99@2
|
29 but WITHOUT ANY WARRANTY; without even the implied warranty of
|
joachim99@2
|
30 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
joachim99@2
|
31 GNU General Public License for more details.
|
joachim99@2
|
32
|
joachim99@2
|
33 You should have received a copy of the GNU General Public License
|
joachim99@2
|
34 along with this program; if not, write to the Free Software
|
joachim99@69
|
35 Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02111-1307 USA
|
joachim99@2
|
36
|
joachim99@2
|
37 For details see file "COPYING".
|
joachim99@2
|
38
|
joachim99@2
|
39
|
joachim99@2
|
40 Requirements & Installation:
|
joachim99@73
|
41 The version 0.9.90-Qt4 requires Qt 4.x.y (from www.trolltech.com) for compilation.
|
joachim99@73
|
42 (Qt-version >= 4.1.2 is recommended.)
|
joachim99@2
|
43
|
joachim99@12
|
44 You always need
|
joachim99@73
|
45 - kdiff3-0.9.90-Qt4.tar.gz
|
joachim99@2
|
46
|
joachim99@73
|
47 - for Un*x: gcc, g++ with version >=3.4.2
|
joachim99@73
|
48 Qt-X11-libraries
|
joachim99@12
|
49
|
joachim99@73
|
50 - for Windows: Qt-win-libs
|
joachim99@73
|
51 If you have the Qt4 commercial edition, then compile with Visual Studio.
|
joachim99@73
|
52 If you use the Qt4 open source edition, then you'll need MinGW.
|
joachim99@73
|
53 I verified that compilation and debugging works with these packages (probably newer ones will also work):
|
joachim99@73
|
54 - gcc-core-3.4.2-20040916-1.tar.gz
|
joachim99@73
|
55 - binutils-2.15.91-20040904-1.tar.gz
|
joachim99@73
|
56 - gcc-g++-3.4.2-20040916-1.tar.gz
|
joachim99@73
|
57 - mingw-runtime-3.9.tar.gz
|
joachim99@73
|
58 - mingw32-make-3.80.0-3.tar.gz
|
joachim99@73
|
59 - w32api-3.6.tar.gz (see also the note below)
|
joachim99@73
|
60 - gdb-5.2.1-1.exe (for debugging)
|
joachim99@73
|
61
|
joachim99@73
|
62 (Note: At the time of writing this README, the MinGW-package that was part
|
joachim99@73
|
63 of qt-win-opensource-4.1.2-mingw.exe lacked the latest w32api needed for
|
joachim99@73
|
64 KDiff3-compilation. You will need to unpack w32api-3.6.tar.gz or newer
|
joachim99@73
|
65 from www.mingw.org into your MinGW-directory.)
|
joachim99@12
|
66
|
joachim99@73
|
67 - for Mac: gcc, g++ with version >=3.4.2
|
joachim99@73
|
68 Qt-Mac-libraries
|
joachim99@2
|
69
|
joachim99@2
|
70
|
joachim99@73
|
71 Note for KDE-users:
|
joachim99@73
|
72 The version 0.9.90-Qt4 doesn't provide support for KDE-3.x
|
joachim99@73
|
73 because KDE-3.x.y requires Qt3.
|
joachim99@73
|
74 If you need KDE-specific features like KIO-support stick to the
|
joachim99@73
|
75 normal version 0.9.90.
|
joachim99@2
|
76
|
joachim99@73
|
77 Build-instructions (Unix or Mac):
|
joachim99@73
|
78 - Make sure your shell-variable QTDIR is correct and that
|
joachim99@73
|
79 your path contains the Qt4-bin-directory.
|
joachim99@73
|
80 - cd into the directory kdiff3-0.9.90-Qt4/src and type
|
joachim99@73
|
81 - qmake kdiff3.pro
|
joachim99@73
|
82 - make (or "gmake" for GNU-Make)
|
joachim99@58
|
83
|
joachim99@73
|
84 Build-instructions (Windows):
|
joachim99@73
|
85 - Run your qtvars.bat in the Qt4-bin directory.
|
joachim99@73
|
86 (This should set your QTDIR, QMAKESPEC and PATH-environment-variables.)
|
joachim99@73
|
87 - cd into the directory kdiff3-0.9.90-Qt4/src and type
|
joachim99@73
|
88 - qmake kdiff3.pro
|
joachim99@73
|
89 - make (which calls either "mingw32-make" or "nmake")
|
joachim99@58
|
90
|
joachim99@73
|
91 Debugging with MinGW under Windows:
|
joachim99@73
|
92 - cd into the directory kdiff3-0.9.90-Qt4/src
|
joachim99@73
|
93 - edit the file "Makefile.Debug" and in the LFLAGS replace "-Wl,-subsystem,windows" with "-Wl,-subsystem,console"
|
joachim99@73
|
94 (this is necessary so that gdb can send a break signal to the running program)
|
joachim99@73
|
95 - make debug (create a debuggable executable)
|
joachim99@73
|
96 - gdb debug\kdiff3.exe
|
joachim99@73
|
97 - At the "(gdb)"-prompt type "run" and enter to start.
|
joachim99@73
|
98 - While the program runs you can't set breakpoints, first interrupt it with Ctrl-C.
|
joachim99@73
|
99 - Use "help" to find out about how to use gdb. (Important commands: run, break, backtrace, print, quit)
|
joachim99@73
|
100 Using break with c++-methods requires to specify the parameter types too. Breakpoints in constructors might not work.
|
joachim99@73
|
101 - I've tested graphical gdb-frontends too:
|
joachim99@73
|
102 1. Insight (also from mingw.org) worked until I wanted to interrupt the program for setting breakpoints.
|
joachim99@73
|
103 2. Dev-Cpp: The debugger said that the app crashed before even launching it.
|
joachim99@73
|
104 Result: For Windows I recommend gdb on the console. Please tell me when things have improved!
|
joachim99@69
|
105
|
joachim99@2
|
106 Start from commandline:
|
joachim99@2
|
107 - Comparing 2 files: kdiff3 file1 file2
|
joachim99@2
|
108 - Merging 2 files: kdiff3 file1 file2 -o outputfile
|
joachim99@2
|
109 - Comparing 3 files: kdiff3 file1 file2 file3
|
joachim99@2
|
110 - Merging 3 files: kdiff3 file1 file2 file3 -o outputfile
|
joachim99@2
|
111 Note that file1 will be treated as base of file2 and file3.
|
joachim99@2
|
112
|
joachim99@12
|
113 If all files have the same name but are in different directories, you can
|
joachim99@12
|
114 reduce typework by specifying the filename only for the first file. E.g.:
|
joachim99@12
|
115 - Comparing 3 files: kdiff3 dir1/filename dir2 dir3
|
joachim99@12
|
116 (This also works in the open-dialog.)
|
joachim99@12
|
117
|
joachim99@2
|
118 If you start without arguments, then a dialog will appear where you can
|
joachim99@2
|
119 select your files via a filebrowser.
|
joachim99@2
|
120
|
joachim99@2
|
121 For more documentation, see the help-menu or the subdirectory doc.
|
joachim99@2
|
122
|
joachim99@2
|
123 Have fun!
|