Mattias Gaertner schreef:
On Wed, 05 Sep 2007 13:13:53 +0200
"A.J. Venter" <[EMAIL PROTECTED]> wrote:
Hi
It means some units uses multithreading code. It does no matter if
they can not logically be called, because the compiler can not know
this. When you use threads, some RTL things must be initialized for
that. One of those things is using the cthreads unit under unix
like systems. You have two ways to fix this:
I think I figured out since then what the change was that affected
the IDE. In the past the instantiation of the TThread descended class
was in a private variable. In order to move the creation of the
thread to the much earlier executed database code, I had to make it a
global variable.
a) Don't compile the multithreaded units into any package that is
installed in the IDE.
b) Add -dUseCThreads to the usage options of the package (custom
options). Then the IDE will use the cthreads unit automatically.
Okay, I tried this and it DID work (under linux anyway). Question
though: will adding -dUseCthreads to the package NOT break win32
compilation ? The package is definitely used multiplatform. Asuming
that the compiler will just ignore this option on win32, this is the
answer I needed.
I added a hint to the multithreading tutorial.
See also:
http://www.freepascal.org/mantis/view.php?id=9597
Vincent
_________________________________________________________________
To unsubscribe: mail [EMAIL PROTECTED] with
"unsubscribe" as the Subject
archives at http://www.lazarus.freepascal.org/mailarchives