Help: I meet a problem in build omniEvents

Help
Bill David
2006-03-13
2013-04-15
  • Bill David
    Bill David
    2006-03-13

    I meet a strange problem which blocks me to build omniEvents on Win2000 SP4 with VC6 SP5 installed.
    I follow the instruction at http://www.omnievents.org/doc/ar01s02.html#id2449494 to build omniEvents from source code.
    The other steps complete successfully. But when I try to run 'make' to build, omniidl report the following errors:

    D:\CORBA\omniEvents-2_6_2>make
    make -C idl all
    make[1]: Entering directory `D:/CORBA/omniEvents-2_6_2/idl'
    omniidl -bcxx   -Wba -Wbh='.hh' -Wbs='.cc' -Wbd='DynSK.cc' -WbBOA -Wbuse_quotes
    -I'D:/CORBA/omniORB-4.0.7\idl'\COS 'D:/CORBA/omniORB-4.0.7\idl'/COS/CosLifeCycle
    .idl
    process_begin: CreateProcess((null), omniidl -bcxx -Wba -Wbh=.hh -Wbs=.cc -Wbd=D
    ynSK.cc -WbBOA -Wbuse_quotes -ID:/CORBA/omniORB-4.0.7\idl\COS D:/CORBA/omniORB-4
    .0.7\idl/COS/CosLifeCycle.idl, ...) failed.
    make (e=2): The system cannot find the file specified.
    make[1]: *** [CosLifeCycle.cc] Error 2
    make[1]: Leaving directory `D:/CORBA/omniEvents-2_6_2/idl'
    make: *** [all] Error 2

    I have tried and find that omniidl can not recognize path with '. If only I remove the ' from the command manually, and change it to something like the following:
    D:\CORBA\omniEvents-2_6_2>omniidl -bcxx   -Wba -Wbh=.hh -Wbs=.cc -Wbd=DynSK.cc -WbBOA -Wbuse_quotes -ID:/CORBA/omniORB-4.0.4/idl\COS D:/CORBA/omniORB-4.0.4/idl\COS/CosLifeCycle.idl
    The command completes successfully.

    But I don't know how I can remove the ' in the Makefile.
    What can I do?

     
    • Bill David
      Bill David
      2006-03-13

      It seems that I have not found the truth. Actually, after made some change in the config.mk, I successfully remove those ' from the command, but it still fails and reports the same error.

      D:\CORBA\omniEvents-2_6_2>make
      make -C idl all
      make[1]: Entering directory `D:/CORBA/omniEvents-2_6_2/idl'
      omniidl -bcxx   -Wba -Wbh=.hh -Wbs=.cc -Wbd=DynSK.cc -WbBOA -Wbuse_quotes -ID:/C
      ORBA/omniORB-4.0.7\idl\COS D:/CORBA/omniORB-4.0.7\idl/COS/CosLifeCycle.idl
      process_begin: CreateProcess((null), omniidl -bcxx -Wba -Wbh=.hh -Wbs=.cc -Wbd=D
      ynSK.cc -WbBOA -Wbuse_quotes -ID:/CORBA/omniORB-4.0.7\idl\COS D:/CORBA/omniORB-4
      .0.7\idl/COS/CosLifeCycle.idl, ...) failed.
      make (e=2): The system cannot find the file specified.
      make[1]: *** [CosLifeCycle.cc] Error 2
      make[1]: Leaving directory `D:/CORBA/omniEvents-2_6_2/idl'
      make: *** [all] Error 2

      But when I copy the command and run it, it completes successfully:
      D:\CORBA\omniEvents-2_6_2>omniidl -bcxx   -Wba -Wbh=.hh -Wbs=.cc -Wbd=DynSK.cc -
      WbBOA -Wbuse_quotes -ID:/CORBA/omniORB-4.0.7\idl\COS D:/CORBA/omniORB-4.0.7\idl/
      COS/CosLifeCycle.idl

      D:\CORBA\omniEvents-2_6_2>

      And related file is generated.
      So what's the problem? I am puzzled.

       
    • Bill David
      Bill David
      2006-03-13

      God! I think I have find the root cause:
      when using UnxUtils, must run bin\sh.exe before running make. Otherwise, make will failed to find files.