Switch to unified view

a/website/devel.html b/website/devel.html
...
...
38
38
39
      <p>More translations is good ! If you are a non-english speaker
39
      <p>More translations is good ! If you are a non-english speaker
40
    (and understand english, which can probably be assumed, you
40
    (and understand english, which can probably be assumed, you
41
    being reading this), you can take a little time to translate
41
    being reading this), you can take a little time to translate
42
    the GUI messages file.</p>
42
    the GUI messages file.</p>
43
      <p>The newest versions of the message files follow. There
43
      <p>The newest versions of the message files follow can be found
44
        in <a href="translations">this directory</a>. There
44
    is an empty one (the xx thing), the others are partially
45
    is an empty one (the xx one), the others are partially
45
    translated, just needing an update for the new messages.<p>
46
    translated, just needing an update for the new messages.<p>
46
      <p>Updating the files can easily be done with
47
      <p>Updating the files can easily be done with
47
    the <span class="application">Qt Linguist</span>. Contact me
48
    the <span class="application">Qt Linguist</span>. Contact me
48
    for more directions if needed.</p>
49
    for more directions if needed.</p>
49
      <ul>
50
  <li>Blank: <a href="translations/recoll_xx.ts">recoll_xx.ts</a></li>
51
  <li>German: <a href="translations/recoll_de.ts">recoll_de.ts</a></li>
52
  <li>Italian: <a href="translations/recoll_it.ts">recoll_it.ts</a></li>
53
  <li>Russian: <a href="translations/recoll_ru.ts">recoll_ru.ts</a></li>
54
  <li>Turkish: <a href="translations/recoll_tr.ts">recoll_tr.ts</a></li>
55
  <li>Ukrainian: <a href="translations/recoll_uk.ts">recoll_uk.ts</a></li>
56
      </ul>
57
50
58
      <h1><a name="development">Development</a></h1>
51
      <h1><a name="development">Development</a></h1>
59
52
60
      <p>The Recoll source repository is
53
      <p>The Recoll source repository is
61
    on <a href="http://bitbucket.org/medoc/recoll">Bitbucket</a>. Using
54
    on <a href="http://bitbucket.org/medoc/recoll">Bitbucket</a>. Using
...
...
65
      <p>Apart from the many tasks inside the
58
      <p>Apart from the many tasks inside the
66
      <a href="http://bitbucket.org/medoc/recoll/issues">issue
59
      <a href="http://bitbucket.org/medoc/recoll/issues">issue
67
    tracking system</a>, these are the general areas where help or
60
    tracking system</a>, these are the general areas where help or
68
    ideas are particularly welcome:</p>
61
    ideas are particularly welcome:</p>
69
      <ul>
62
      <ul>
70
    <li>A better GUI design (both the ergonomy and the appearance).</li>
63
    <li>A better GUI design (both the ergonomy and the
64
  appearance). Adding missing shortcuts or fixing the menu
65
  accelerators for exemple is easy and useful.</li>
71
66
72
        <li>More support for the more advanced <span class=
67
        <li>More support for the more advanced <span class=
73
        "application">Xapian</span> concepts like relevance
68
        "application">Xapian</span> concepts like relevance
74
      feedback.</li>
69
      feedback.</li>
75
70
...
...
93
    "recollindex" command line indexing command).</p>
88
    "recollindex" command line indexing command).</p>
94
89
95
      <p>Reporting crashes is very useful. It can help others, and it
90
      <p>Reporting crashes is very useful. It can help others, and it
96
    can get your own problem to be solved.</p>
91
    can get your own problem to be solved.</p>
97
92
98
      <p>All reports are useful. But, in order to maximize usefulness,
93
      <p>You will find help and information about producing a useful
99
  a crash report should include a so-called stack trace, something
94
      problem report on this 
100
  that indicates what the program was doing when it
95
        <a href="https://bitbucket.org/medoc/recoll/wiki/ProblemSolvingData">
101
  crashed. Getting a useful stack trace is not very difficult,
96
          Recoll wiki page</a>.</p>
102
  but it may need a little work on your part (which
103
  will then enable me do my part of the work).</p>
104
105
      <p>If your distribution includes a separate package for Recoll
106
  debugging symbols, it probably also has a page on its web site
107
  explaining how to use them to get a stack trace. You should
108
  follow these instructions. If there is no debugging package,
109
  you should follow the instructions below. A little
110
  familiarity with the command line will be necessary.</p>
111
112
      <dl><dt>Compiling and installing a debugging version</dt>
113
  <dd>
114
    <ul>
115
    <li>Obtain the recoll source for the version you are using
116
      (<a
117
      href="http://www.recoll.org/download.html">www.recoll.org</a>),
118
      and extract the source tree.</li>
119
120
    <li>Follow the instructions for 
121
      <a
122
      href="http://www.lesbonscomptes.com/recoll/usermanual/index.html#RCL.INSTALL.BUILDING">
123
        building Recoll from source</a> with the following
124
        modifications: 
125
      <ul>
126
        <li>Before running <tt>configure</tt>, edit
127
      the <tt>mk/localdefs.in</tt> file and remove the <tt>-O2</tt>
128
      option(s). </li>
129
        <li>When running <tt>configure</tt>, specify the
130
      standard installation location for your system as a prefix
131
      (to avoid ending up with two installed versions, which
132
      would almost certainly end in confusion). On Linux this
133
      would typically be: 
134
      <br><tt>configure --prefix=/usr</tt>.
135
        </li> <li>When installing, arrange for the installed
136
      executables not to be stripped of debugging symbols by
137
      specifying a value for the STRIP environment variable
138
      (ie: <tt>echo</tt> or <tt>ls</tt>): <br><tt>sudo make
139
      install STRIP=ls</tt>
140
        </li>
141
      </ul>
142
      </ul></dd>
143
144
      <dt>Getting a core dump</dt>
145
  <dd>You will need to run the operation that caused the crash
146
  inside a writable directory, and tell the system that you
147
  accept core dumps. The commands need to be run in a shell
148
  inside a terminal window. Ie:
149
    <pre><tt>
150
cd
151
ulimit -c unlimited
152
recoll  #(or recollindex or whatever you want to run).
153
    </tt></pre>
154
155
    Hopefully, you will succeed in getting the command to crash,
156
    and you will get a core file.
157
  </dd>
158
159
      <dt>Using gdb to get a stack trace</dt>
160
  <dd>
161
    <ul>
162
      <li>Install <tt>gdb</tt> if it is not already on the system.</li>
163
164
      <li>Run <tt>gdb</tt> on the command that crashed and the
165
      core file (depending on the system, the core file may be
166
      named "core" or something else, like recollindex.core, or
167
      core.pid), ie:
168
169
        <br><tt>gdb /usr/bin/recollindex core</tt>
170
      </li>
171
      <li>Inside <tt>gdb</tt>,  you need to use different
172
        commands to get a stack trace for <tt>recoll</tt>
173
        and <tt>recollindex</tt>. For <tt>recollindex</tt> you
174
        can use the <tt>bt</tt> command. For <tt>recoll</tt>
175
        use: <br><tt>thread&nbsp;apply&nbsp;all&nbsp;bt&nbsp;full</tt>
176
      </li>
177
      <li>Copy/paste the output to your report email :), and
178
        quit <tt>gdb</tt> ("q").</li>
179
    </ul>
180
  </dd>
181
      </dl>
182
97
183
    </div>
98
    </div>
184
  </body>
99
  </body>
185
</html>
100
</html>
186
101