Linking problem in projects with multiple derived interfaces
- From: Kuba <kpuchar poczta onet pl>
- To: orbit-list gnome org
- Subject: Linking problem in projects with multiple derived interfaces
- Date: Wed, 25 Apr 2001 12:53:19 +0200
I have a problem and I wonder, whether it's an error, or not. Surely it's very inconvenient for me.
Suppose we have three idl's in the same directory: file1.idl, file2.idl and file3.idl.
file1.idl:
--------------------------
module A {
interface Base {
};
};
--------------------------
file2.idl
--------------------------
#include <file1.idl>
module A {
interface FirstDerived : A::Base {
};
};
--------------------------
file3.idl
--------------------------
#include <file1.idl>
module A {
interface SecondDerived : A::Base {
};
};
--------------------------
Compile them and try to link generated eg. stub files against a project, which is using both SecondDerived and FirstDerived interfaces. Linker complains, that
there are two implementations of interface Base stub structures and functions.
It happens so, because orbit-idl compiler generates code for all interfaces contained in idl's #included from our idl (in my example in file file2-stub.c and file3-stub.c you can find code for interface Base - related structures and functions).
Why compiler doesn't generate code only for interfaces from compiled file with #include for header of #included idl file?
Best regards,
Kuba
--
[
Date Prev][
Date Next] [
Thread Prev][Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]