I'm experiencing a BMAKE error all of a sudden. Things were fine, then one time when I went to run BMAKE I got (and continue to get):
Bentley.Make.ArgumentException : ~task arguments must begin with -i: for inputs or -o: for outputs. See Issues)\srs_isoRadialDim_MDL\Mdl.mke. You are missing the leading '-'.
1>Bentley Systems Make Utility. Version 08.11.09.02, Jan 5 2010
1>Mon Jul 08 14:36:15 2013
1>Mon Jul 08 14:36:15 2013, elapsed time: 0:00
1>BMAKE: call trace
1> line: 122, D:\PROGRA~1\Bentley\MICROS~1\MICROS~1\/mdl/include/DeterminePolicyFile.mki
1> line: 63, D:\PROGRA~1\Bentley\MICROS~1\MICROS~1\/mdl/include/ConfigurePolicy.mki
1> line: 28, D:\PROGRA~1\Bentley\MICROS~1\MICROS~1\/mdl/include/mdl.mki
1> line: 27, z:\source_code\srs_8i_nativeCode\SS3\SS3_VS2005\Iso\srs_isoRadialDim(ArrowHead Issues)\srs_isoRadialDim_MDL\Mdl.mke
1>Project : error PRJ0002 : Error result 1 returned from 'C:\Windows\SysWow64\cmd.exe'.
1>Build log was saved at "file://z:\source_code\srs_8i_nativeCode\SS3\SS3_VS2005\Iso\srs_isoRadialDim(ArrowHead Issues)\srs_isoRadialDim_MDL\Release\BuildLog.htm"
1>MDL - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Strange thing is - I haven't exited VS2005. It just started to do this. I've looked at mdl.mki, ConfigurePolicy.mki, and ConfigurePolicyFile.mki, but it's far from clear 1) what's going on; 2) why it's happening all of a sudden, and 3) how to fix it.
I run BMAKE from a batch file ( below is the "meat" of the file ):
REM Provide required values for bmake layered build policy machinery.
set USE_LAYERED_POLICY=1
set PolicyFileNamesMki=$(MSMDE)mdl/include/MdlSdkPolicyFileNames.mki
set PolicyFileMapMki=$(MSMDE)mdl/include/MdlSdkPolicyFileMap.mki
set BMAKE_OPT=-I%mdltools%mdl\include
set PATH=%MS%;%mdltools%mdl\bin\;%PATH%
set MLINK_STDLIB=%mdltools%mdl\library\builtin.dlo %mdltools%mdl\library\BentleyDgn.dlo %mdltools%mdl\library\toolsubs.dlo
bmake -a Mdl.mke -dNO_COMPILERS_MKI -dBUILD_USING_NoToolset
And I use a standard template for my .mke and .mki files. Here is the .mke file:
appName = srs_isoRadialDim_mdl
#-----------------------------------------------------
# bring in default rules for creating .rsc, .mo, etc files
#-----------------------------------------------------
###%include mdl.mki
privateInc = $(baseDir)
langSpec = $(baseDir)english/
%if defined (MSJ)
# Create a macro for portable library extensions.
libraryExt = dlo
%else
libraryExt = ml
%endif
#------------------------------------------------------------------------
# mdl.mki contains the default rules for creating .rsc, .mo, etc files
#------------------------------------------------------------------------
%ifdef BSI
%include $(MS)/mdl/include/publish/mdl.mki
%else
%include $(MS)/mdl/include/mdl.mki
%endif
#-----------------------------------------------------
# define macros for files in our link and resource maps
#-----------------------------------------------------
Objs = \
$(o)$(appName).mo \
# $(mdlLibs)ditemlib.$(libraryExt)\
Rscs = \
$(o)$(appName)Cmd.rsc \
#-----------------------------------------------------
# generate command table include resource file using rcomp
#-----------------------------------------------------
$(baseDir)$(appName)cmd.h : $(baseDir)$(appName)cmd.r
$(o)$(appName)cmd.rsc : $(baseDir)$(appName)cmd.r
dlmObjs = $(baseDir)$(dllName)$(oext)
#----------------------------------------------------------------------
# The following section generates the MDL Intermediate module using
# rlib. This module contains the MDL CODE module and any
# non-translatable resource modules.
#----------------------------------------------------------------------
$(o)$(appName).mi : $(Rscs)
$(msg)
> $(o)temp.cmd
-o$@
$(Rscs)
<
$(RlibCmd) @$(o)temp.cmd
# ~time
#----------------------------------------------------------------------
# The last step to this makefile is to include the MANDATORY makefile
# used to compile the translatable resources and create the final
# MDL application. This file is typically located in the directory
# pointed to by the 'baseDir' macro defined by the user at the top
# of this file. The standard extension for this included makefile is
# '.mki' and the file is distributed as part of the Foreign Language
# Translation Kit.
#----------------------------------------------------------------------
%include $(baseDir)$(appName).mki
I just create the resources in the BMAKE file, and use VS2005 compiler for the DLL part. I've cleared out the temporary files and even tried to re-create the .bat, .mke, and .mki files from another project. I can open up another project, and the MDL part compiles fine....
I'm going to exit VS2005, and reboot the PC, but why this happens now on just one project has me baffled.
Bruce