G
GeorgeWalkerWBC
Guest
I am developing a group of applications that use RPC. A couple of them have to access multiple RPC servers, and at least one of them is both an RPC Server and an RPC Client.
For each server interface I have a seperate IDL file that I include in the project. Then I also include the generated *_c.c (renamed as _c.cpp) or the *_s.c.
On the applications that have 2 IDL files, I frequently run in to link errors (duplicate symbols). The generated C files have midl_frag variables that can have the same names and have used an "extern" statement as a "forward" declaration such as:
extern const __midl_frag7_t __midl_frag7;
I can resolve the issues by editing the C files, but as I am still developing, that becomes a lot of work. Is there a way to fix this? For applications that are only clients, I can combine the IDL files, but that doesn't work when the app is both a client and a server.
Thanks for any help.
Continue reading...
For each server interface I have a seperate IDL file that I include in the project. Then I also include the generated *_c.c (renamed as _c.cpp) or the *_s.c.
On the applications that have 2 IDL files, I frequently run in to link errors (duplicate symbols). The generated C files have midl_frag variables that can have the same names and have used an "extern" statement as a "forward" declaration such as:
extern const __midl_frag7_t __midl_frag7;
I can resolve the issues by editing the C files, but as I am still developing, that becomes a lot of work. Is there a way to fix this? For applications that are only clients, I can combine the IDL files, but that doesn't work when the app is both a client and a server.
Thanks for any help.
Continue reading...