Mail Archives: djgpp/2004/03/31/07:45:15.1
X-Authentication-Warning: | delorie.com: mail set sender to djgpp-bounces using -f
|
From: | Hans-Bernhard Broeker <broeker AT physik DOT rwth-aachen DOT de>
|
Newsgroups: | comp.os.msdos.djgpp
|
Subject: | Re: Problem with Allegro and DzComm
|
Date: | 31 Mar 2004 12:32:39 GMT
|
Organization: | Aachen University of Technology (RWTH)
|
Lines: | 48
|
Message-ID: | <c4edp7$cqb$1@nets3.rz.RWTH-Aachen.DE>
|
References: | <c4e9db$228g$1 AT alpha2 DOT radio-msu DOT net>
|
NNTP-Posting-Host: | ac3b07.physik.rwth-aachen.de
|
X-Trace: | nets3.rz.RWTH-Aachen.DE 1080736359 13131 137.226.33.205 (31 Mar 2004 12:32:39 GMT)
|
X-Complaints-To: | abuse AT rwth-aachen DOT de
|
NNTP-Posting-Date: | 31 Mar 2004 12:32:39 GMT
|
To: | djgpp AT delorie DOT com
|
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp
|
Reply-To: | djgpp AT delorie DOT com
|
Anthony <akantsel AT integra DOT rmt DOT ru> wrote:
> Hello!
> I'm experiencing problems with Allegro 4.1.12 + DzComm 0.9.9g programming.
> LOCK_FUNCTION(tick_handler); // error: invalid convertion from 'void
> (*)()' to 'void*'
That error hints at an incompatibility between your choice of
compiler&language (current GCC compiling C++ code) and the version of
Allegro you're using. You'll have to get a newer Allegro, revert back to
an older GCC or use C code, I think.
> in file c306th.h:
> #ifndef _CENTER_306_THERMOMETR_H_
> #define _CENTER_306_THERMOMETR_H_
> #include <stdexcept>
> #include <dzcomm.h>
> ...
> #endif
There's a very high chance that your problem is in the '...', i.e. in
the part you didn't show here. Either that, or your installed version
of dzcomm is unsuited for use with current C++ compilers, too.
> c:/djgpp/tmp/ccId1w5b.o(.text+0x0):thermo.cpp: multiple definition of
> `__dzdos_i
> nstall_irq'
> c:/djgpp/tmp/cctwBPwX.o(.text+0x0):C306th.cpp: first defined here
This strongly indicates there are *definitions* of objects in either
your own header file, or in dzcomm.h. Compile with debug information
and the linker should be able to pin-point the location for you. As
an alternative, search both your own header file and <dzcomm.h> for
definitions of dzdos_install_irq() and friends. I would suspect
dzcomm.h.
It *may* help to add a missing
extern "C" {
//
}
around your #include <dzcomm.h>.
--
Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de)
Even if all the snow were burnt, ashes would remain.
- Raw text -