compile error trying to convert MDL to CONNECT

I installed VS2019, CONNECT and its SDK and I can compile the examples without a problem..

I am trying convert an MDL from SS3 to CONNECT. It is already in .DLL form and compiles within VS in SS3.

When the compiler gets to the type resource, I get this error:

[== Building D:\Users\KWA0GSU\AppData\Local\Temp\Bentley\MicroStationSDK\objects\fplcmd.rsc, (D:\fpl\devStudio\fplmdl\src\fplcmd.r) ==]
rcomp @D:\Users\KWA0GSU\AppData\Local\Temp\Bentley\MicroStationSDK\objects\make.opt
MicroStation Resource Compiler 10.16.01
BMAKE: no rules to build D:\Users\KWA0GSU\AppData\Local\Temp\Bentley\MicroStationSDK\objects\fpltyp.r
BMAKE: call trace
line: 69, D:\fpl\devStudio\fplmdl\src\fplmdl.mke
Mon Apr 04 15:30:20 2022, elapsed time: 0:00

My make file looks virtually identical to the myapp.mke example that compiles without error. Does anybody have any idea what could be going wrong here?

#------------------------------------------------------------------------
# Generate command table include & resource file using rcomp
#------------------------------------------------------------------------
$(o)fplcmd.h : $(baseDir)fplcmd.r

$(o)fplcmd.rsc : $(baseDir)fplcmd.r

#------------------------------------------------------------------------
# Create & compile the app's type resource using rsctype & rcomp
#------------------------------------------------------------------------
$(o)fpltyp.r : $(baseDir)$fpltyp.mt \
$(privateInc)fplids.h

$(o)fpltyp.rsc : $(o)fpltyp.r

#------------------------------------------------
# Set up to use dlmcomp.mki and dlmlink.mki
#------------------------------------------------

Parents
  • $(o)fpltyp.r : $(baseDir)$fpltyp.mt \
    $(privateInc)fplids.h $(o)fpltyp.rsc : $(o)fpltyp.r

    make files are sensitive to white space and line feeds. Try this...

    $(o)fpltyp.r : $(baseDir)$fpltyp.mt  $(privateInc)fplids.h
    
    $(o)fpltyp.rsc : $(o)fpltyp.r

     
    Regards, Jon Summers
    LA Solutions

  • I had to copy over myapp.mke to get passed this error. Now here is the next one...

    [== Building D:\Users\KWA0GSU\AppData\Local\Temp\Bentley\MicroStationSDK\objects\fplmdltyp.r, (D:\fpl\devStudio\fplmdl\src\fplmdl.h) ==]
    rsctype @D:\Users\KWA0GSU\AppData\Local\Temp\Bentley\MicroStationSDK\objects\make.opt
    MicroStation Type Resource File Generator 10.16.01
    C:\MDLC\include\Mstn\MdlApi\mselems.h(11) : error: can't open #include file math.h
    C:\MDLC\include\Mstn\MdlApi\mselems.h(11) : error: No such file or directory
    C:\MDLC\include\Bentley/Bentley.h(46) : error: "This file is for C++ compilands only"
    C:\MDLC\include\Bentley/suppress_warnings.h(11) : warning: pragma not recognized.
    C:\MDLC\include\Bentley/suppress_warnings.h(12) : warning: pragma not recognized.

    Thanks for your help. 

    Ken

  • Hi ,

    For future (new) errors, please create new posts to help ensure when users search they can quickly find and resolve each unique issue.

    A couple necessary data points for migrating existing code:

    1. Build and Compile your application code projects from within the MicroStation Developer Shell (Run as admin). 
    2. Note many .h files that contained MicroStation Resources (compiled to - .rsc) should exclusively be placed in .r.h (resource file headers) in CONNECT.
    3. For MSCE code projects it is required and most convenient to verify your make file has two lines like in MyApp, like this:
      myapp.mke:11:MDLMKI = $(MSMDE)mki/
      myapp.mke:12:PolicyFile = $(MDLMKI)MicroStationPolicy.mki
    4. In your app's .cpp file I suggest to start by commenting out all includes and starting with just this one (#include <Mstn\MdlApi\MdlApi.h>) and incrementally expand adding additional headers as needed.  If you have many CPP files you could simplify by creating a single (1) YourAppIncludes.h and maintain a single list there. It's really a personal and design decision you can try to help improve speed, efficiency and consistency in your migration.

    HTH,
    Bob



Reply
  • Hi ,

    For future (new) errors, please create new posts to help ensure when users search they can quickly find and resolve each unique issue.

    A couple necessary data points for migrating existing code:

    1. Build and Compile your application code projects from within the MicroStation Developer Shell (Run as admin). 
    2. Note many .h files that contained MicroStation Resources (compiled to - .rsc) should exclusively be placed in .r.h (resource file headers) in CONNECT.
    3. For MSCE code projects it is required and most convenient to verify your make file has two lines like in MyApp, like this:
      myapp.mke:11:MDLMKI = $(MSMDE)mki/
      myapp.mke:12:PolicyFile = $(MDLMKI)MicroStationPolicy.mki
    4. In your app's .cpp file I suggest to start by commenting out all includes and starting with just this one (#include <Mstn\MdlApi\MdlApi.h>) and incrementally expand adding additional headers as needed.  If you have many CPP files you could simplify by creating a single (1) YourAppIncludes.h and maintain a single list there. It's really a personal and design decision you can try to help improve speed, efficiency and consistency in your migration.

    HTH,
    Bob



Children
No Data