Hi, Michael.
For the first, I would like to say that now I am able to
run bette example on Linux - thank you for your help.
I was trying to compile quoCore on Win32 and got some
problems:
QUO VERSION: 3.0.8
HOST MACHINE and OPERATING SYSTEM:
Win2K SP1.
TARGET MACHINE and OPERATING SYSTEM, if different from HOST:
COMPILER NAME AND VERSION (AND PATCHLEVEL):
MSVC++ 6.0 SP5
AREA/CLASS/EXAMPLE AFFECTED:
[What example failed? What module failed to compile?]
quokernel_dll
DOES THE PROBLEM AFFECT:
COMPILATION?
If so, what does your shell environment look like ?
TAO is installed and ACE_ROOT and TAO_ROOT are set correctly.
QUO_ROOT is also defined
LINKING?
On Unix systems, did you run make realclean first?
EXECUTION?
OTHER (please specify)?
[Please indicate whether QUO, your application, or both are affected.]
SYNOPSIS:
The first problem was the following - MSVC does not recognize neither
.dsp nor .dsw files as a project/workspace files at all. The reason -
these files are distributed as "unix-style" text files, but MSVC expect
"dos-style" (CR/LF) text files. After convertion, MSVC loads projects
correctly.
After that I have got a lot (about 300) undefined symbols when linking
quokernel_dll:
Linking...
Creating library ./libQuoKernel.lib and object ./libQuoKernel.exp
ValueSCImpl.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: static int __cdecl
TAO_POA_Initializer::init(void)" (__imp_?init@TAO_POA_Initializer@@SAHXZ)
SysCondImpl.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: static int __cdecl
TAO_POA_Initializer::init(void)" (__imp_?init@TAO_POA_Initializer@@SAHXZ)
TimeSCImpl.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: static int __cdecl
TAO_POA_Initializer::init(void)" (__imp_?init@TAO_POA_Initializer@@SAHXZ)
TransitionCode.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: static int __cdecl
TAO_POA_Initializer::init(void)" (__imp_?init@TAO_POA_Initializer@@SAHXZ)
ValueSCCallbackImpl.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: static int __cdecl
TAO_POA_Initializer::init(void)" (__imp_?init@TAO_POA_Initializer@@SAHXZ)
quoS.obj : error LNK2001: unresolved external symbol "__declspec(dllimport)
public: static int __cdecl TAO_POA_Initializer::init(void)"
(__imp_?init@TAO_POA_Initializer@@SAHXZ)
...
The reason - there was no
$(TAO_ROOT)\tao\PortableServer\TAO_PortableServerd.lib
included. I fixed it and comilation complete successfully.
Also, I found that Release version is not configured at all and I made
appropriate changes to compile Release version of libQuoKernel.dll also.
---------------------------------------------
$QOU_ROOT/examples/simple/adapter does not compiles:
--------------------Configuration: QDL - Win32 Debug--------------------
Generating code for property file SwitchedCounter.prp
ERROR: `middleware' unspecified
legal values: corba, rmi or none
ERROR checking merged data sources - quogen exiting.
Error spawning c:\winnt\system32\cmd.exe
server.exe - 2 error(s), 0 warning(s)
I added --middleware=corba to the quogen invocation command line and after
that got the following problem:
--------------------Configuration: QDL - Win32 Debug--------------------
Generating code for property file SwitchedCounter.prp
quogen: cannot open temp file
C:\DOCUME~1\NECHYP~1\LOCALS~1\Temp\\\idlf_a016481.cc for writing
quogen: cannot open temp file
C:\DOCUME~1\NECHYP~1\LOCALS~1\Temp\\\idlf_a016482.cc for writing
quogen: cannot open temp file
C:\DOCUME~1\NECHYP~1\LOCALS~1\Temp\\\idlf_a016483.cc for writing
cdl parse error: line = 8 , parse error
error : unexpected identifier quo::ValueSC
If quo::ValueSC is an IDL type, make sure the corresponding IDL file got
parsed
encountered 1 error(s) while parsing SwitchContract.cdl
ERROR parsing SwitchContract.cdl - quogen exiting.
Error spawning c:\winnt\system32\cmd.exe
server.exe - 3 error(s), 0 warning(s)
I have no idea why it happens because the mentioned directory is exists and
write enabled and there is enough free space...
================================================
Also I would like to make the following proposals
concerning project settings:
1. quogen:
using .shobj_d and .shobj_r for intermediate files (Degug and Release)
Name quogen debug version as quogend.exe and let them be generated to
$QUO_ROOT/bin
this change broke (at least) $QOU_ROOT/examples/simple/adapter project
compilation because quogen.exe was not found in codegen/ directory,
but this project does not compiles anyway and needs changes in
project settings (see above) so I am also change quogen invocation
path to bin.
Release version of quogen was not configured. I have made required
changes
2. quokernel_dll:
for debug version use libQuoKerneld.dll and for release libQuoKernel.dll
put intermediate files to .shobj_d and .shobj_r
and output (.lib) to ../lib instead of ./
generate dll files to ../bin
================================================
Questions:
I am not quite understand what is $QUO_ROOT/codegen/contract/contract.dsw
and corresponding .dsp files for. I've got impression that this files are
really outdated. Could you please explain for what these files are used.
Please, let me know what do you think about proposed changes. I have project
files with all mentioned changes and if you would like to take a look on
them,
I will be glad to send them to you.
Thank you.
Andrey Nechypurenko.
--
[To unsubscribe to this list send an email to "majdart@..."
with the following text in the BODY of the message "unsubscribe quo-users"]