File: README.qt

package info (click to toggle)
xastir 2.1.0-5
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 15,204 kB
  • sloc: ansic: 113,888; perl: 7,503; sh: 5,711; cpp: 2,651; makefile: 604; python: 312; pascal: 159; sql: 102; sed: 93
file content (177 lines) | stat: -rw-r--r-- 6,004 bytes parent folder | download | duplicates (4)
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
164
165
166
167
168
169
170
171
172
173
174
175
176
177
LATEST STATUS:
--------------
The File->Exit and Interface->Interface Control portions work. No other
menu options have been implemented. It will connect to a server and display
raw packets as they come in, but there are no maps, symbols, etc. There's
not any packet decoding either. The networking is both IPv4 and IPv6
compatible. It compiles/runs fine and should be very cross-platform at
this stage (must be compiled on each one though).


INITIAL PREPARATION:
--------------------
Qt4 development tools are required for compiling -or- GUI design. For SuSE
Linux they are in the "libqt4-devel" RPM package. This includes "qmake",
"uic", and "designer" (Qt4 Designer).

You'll also need the gcc-c++ compiler installed. For SuSE Linux that's in
the "gcc-c++" package.

You can do manual builds or builds from within Qt Creator. In general I
describe manual builds here.


MANUAL BUILD:
-------------
  cd Xastir/src/qt
  ./build.sh


RUN THE EXECUTABLE:
-------------------
  cd build
  ./xastir_qt &


GENERAL QT4 NOTES:
------------------
*) Do an out-of-source build to keep the source code directory pristine.
   Perform all configure/compile commands from inside a "build" directory:

   mkdir -p build
   cd build

*) Use QT 4 Designer to create the graphical elements. Each
   dialog/window gets written out to a separate *.ui file.

    designer &
    Open->mainwindow.ui

*) Manual compile of ".ui" files:  Use the "uic" compiler to compile
   .ui files to .h files:  Note:  The "qmake" command below does this
   automatically!

    uic -o *.h *.ui

*) moc -o mydialog.moc mydialog.h

*) Use "qmake -project" to create the initial .pro file for the
   os-independent build system.

*) Include the .h files in the .cpp files for your C++ program.

*) Use "qmake" to build the project.

*) "make"

Examples: (Generic, not for the Xastir project:
  uic -o ui_mydialog.h mydialog.ui
  moc -o mydialog.moc mydialog.h
  qmake -project
  qmake
  make


Once the project branch has been checked-out, these steps issued
from the command-line should compile it:

  cd Xastir/src/qt
  mkdir -p build
  cd build
  qmake ../xastir-qt.pro
  make


Remember also that the *best* way to do multiple builds of an
autoconfiscated code (and a qmake-ified code) is do do out-of-source
builds, not in-source builds. Doing so keeps the source tree
unpolluted with build droppings. Thus,

  mkdir ~/builds/xastir-qt -p
  cd ~/builds/xastir-qt
  qmake ~/src/xastir/qt/xastir-qt.pro
  make

will build the qt stuff, and

  mkdir ~/builds/xastir-motif -p
  cd ~/builds/xastir-motif
  ~/src/xastir/configure
  make

will build the normal build, and neither will interfere with the
other.


libqt4-devel rpm provides these binaries (as well as include files
and others). Those with '*' are the ones we currently use:
*   /usr/bin/designer
    /usr/bin/lconvert
    /usr/bin/linguist
    /usr/bin/lrelease
    /usr/bin/lupdate
*   /usr/bin/moc
    /usr/bin/pixeltool
    /usr/bin/qdbuscpp2xml
    /usr/bin/qdbusxml2cpp
    /usr/bin/qdoc3
    /usr/bin/qhelpconverter
    /usr/bin/qhelpgenerator
*   /usr/bin/qmake
    /usr/bin/qt3to4
    /usr/bin/qttracereplay
    /usr/bin/qvfb
    /usr/bin/rcc
*   /usr/bin/uic
    /usr/bin/uic3


SPECIFIC NOTES:
---------------


Here's what Qt Creator does when you do a Build->Clean All:
-----------------------------------------------------------
Starting: /usr/bin/make clean -w 
make: Entering directory `/home/src/we7u/xastir/xastir-qt'
rm -f moc_xastir.cpp
rm -f ui_mainwindow.h
rm -f main.o mainwindow.o moc_xastir.o
rm -f *~ core *.core
make: Leaving directory `/home/src/we7u/xastir/xastir-qt'
Exited with code 0.


Here's a Qt Creator Build->Build All command:
---------------------------------------------
Configuration unchanged, skipping QMake step.
Starting: /usr/bin/make -w 
make: Entering directory `/home/src/we7u/xastir/xastir-qt'
/usr/bin/uic mainwindow.ui -o ui_mainwindow.h
g++ -c -m64 -pipe -g -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include -I. -I. -o main.o main.cpp
g++ -c -m64 -pipe -g -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include -I. -I. -o mainwindow.o mainwindow.cpp
/usr/bin/moc -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include -I. -I. xastir.h -o moc_xastir.cpp
g++ -c -m64 -pipe -g -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include -I. -I. -o moc_xastir.o moc_xastir.cpp
g++ -m64 -o xastir-qt main.o mainwindow.o moc_xastir.o -L/usr/lib64 -lQtGui -L/usr/lib64 -L/usr/X11R6/lib64 -lQtNetwork -lQtCore -lpthread
make: Leaving directory `/home/src/we7u/xastir/xastir-qt'
Exited with code 0.


Here's a Qt Creator Build->Run qmake (I must have something misconfigured in my project):
-----------------------------------------------------------------------------------------
Starting: /usr/bin/qmake /home/src/we7u/xastir/xastir-qt/xastir-qt.pro -spec linux-g++-64 -r CONFIG+=debug QMLJSDEBUGGER_PATH=/usr/share/qtcreator/qml/qmljsdebugger 
Exited with code 0.


<I'm pretty sure that Curt's notes below assume that there are
left-over droppings from a previous qmake on another system. None of
those files are still in CVS, so they shouldn't be relevant: you
should always need to do a qmake from a fresh check-out, and you are 
highly advised to do an out-of-source build as noted above>

LINUX:
------
For Linux:  Had to run "qmake;make" on a 32-bit system because all the files
had been created on a 64-bit system.  On a 64-bit system just run "make".