Hello Be forum,
It's been a while that I used the programming for Microstation J, I lost every configuration and now I need to recreate how to run the bmake:
I run the mstndevvars.bat
Then I type the bmake basic and I got an error that the ditemlib.dlo can't be found.
Does anyone can help in solve this error, I appreciate it very much.
--------------------------------------------------------------------The following is what I did in the shell command
Visual C++ product directory could not be found.Set nttools to Visual C++ product directory.Set LIB and INCLUDE appropriately.C:\Bentley\Program\MicroStation\mdl\examples\basic>bmake basicBentley Systems Make Utility. Version 8.03, Mar 29 2001Wed Feb 13 14:34:28 2013BMAKE: cannot find file C:\Bentley\Program\MicroStation\mdl\bin\mdl\library\ditemlib.dloBMAKE: call trace line: 83, C:\Bentley\Program\MicroStation\mdl\examples\basic\basic.mkeWed Feb 13 14:34:28 2013, elapsed time: 0:00C:\Bentley\Program\MicroStation\mdl\examples\basic>mlink basicMicroStation Development Language Linker 07.01.05### basic.mo: Could not open input file.Fatal error: abortingC:\Bentley\Program\MicroStation\mdl\examples\basic>
--------------------------------------------------------------------------
----------------------------------------------------------------------------My mstndevvars.bat file is like this:@echo offecho Visual C++ product directory could not be found.echo Set nttools to Visual C++ product directory.echo Set LIB and INCLUDE appropriately.set nttools=set LIB=C:\Bentley\Program\MicroStation\mdl\library\set INCLUDE=C:\Bentley\Program\MicroStation\mdl\include\set MS=C:\Bentley\Program\MicroStationset BMAKE_OPT=-I%MS%\mdl\include -I%MS%\jmdl\includeset PATH=%PATH%;%MS%;%MS%\mdl\bin;%MS%\jmdl\binset CLASSPATH=.;%MS%\jmdl\lib\classes.zip;%MS%\jmdl\lib\jmdlsdk.jar;%MS%\jmdl\lib\swingall.jar;%MS%\jmdl\lib\bentley.jar;%MS%\jmdl;%CLASSPATH%set MLINK_STDLIB=C:\Bentley\Program\MicroStation\mdl\library\builtin.dlo;C:\Bentley\Program\MicroStation\mdl\library\ditemlib.dloC:cd \Bentley\Program\MicroStation\mdl\examples\basic--------------------------------------------------------------------My mslocal.cfg is like this:MSDIR = C:/Bentley/Program/MicroStation/_USTN_WORKSPACEROOT : C:/Bentley/Workspace/%include $(MSDIR)config\msconfig.cfgMS = C:/Bentley/Program/Microstation/BMAKE_OPT = -I$(MS)/mdl/include -ddebug--------------------------------------------------------------------
Please clarify which version(s) of MicroStation you have installed. You mention MicroStation/J, but those error messages look like those from the MicroStation V8 version of the build tools.
Regards, Jon Summers LA Solutions
Do you have the ditemlib.dlo file? Make sure that the installation you are working with has the SDK components installed. The error message you are getting is saying that the file is missing.
HTH,
mark anderson [Bentley]
Visit me at https://communities.bentley.com/communities/other_communities/bentley_innovation/default.aspx
Yes I am working with Mstn J, I have both installed in this PC. MJ and V8i Select 3. I don't know if this is the reason why is not working?
Thanks
Samy Cad Coordinator
That's correct, is saying that is missing but I checked already that, and the file exists. I don't know if the path is correct although. I have some kind a doubt in the environment system. Maybe is there is a problem there.
I don't know where to look for this error.
Regards,
So you have V8i and MSJ on the same machine. Now can you post the make file? The strange bit here is that you are trying to use the .dlo file and that is usually for native code applications which are a V8 and beyond thing. Make sure that the source files that you are working with are not .cpp files (for the basic example at least). Make sure your path is pointing to all MSJ generation locations. Where is the batch file that you are calling?
That is where I would start looking.
Thanks for helping me out on this matter,
this is the basic.mke file
#-----------------------------------------------------------------------
#
# Copyright (1993-1995) Bentley Systems, Inc., All rights reserved.
# Application Make File
# $Source: /cvs/miscdev-root/miscdev/mdl/examples/basic/basic.mke,v $
# $RCSfile: basic.mke,v $
# $Revision: 7.1 $
# $Date: 1998/08/11 21:35:54 $
# "MicroStation" is a registered trademark and "MDL" and "MicroCSL"
# are trademarks of Bentley Systems, Inc.
# Limited permission is hereby granted to reproduce and modify this
# copyrighted material provided that the resulting code is used only
# in conjunction with Bentley Systems products under the terms of the
# license agreement provided therein, and that this notice is retained
# in its entirety in any such reproduction or modification.
#---------------------------------------------
# Define macros specific to this example
%if defined (_MakeFilePath)
BaseDir = $(_MakeFilePath)
%else
BaseDir = $(MS)/mdl/examples/basic/
%endif
privateInc = $(BaseDir)
# mdl.mki contains the default rules for creating .rsc, .mo, etc files
# mdlexmpl.mki contains the output directory overrides used by examples
%include mdl.mki
#----------------------------------------------------------------------
# Create needed output directories if they don't exist
$(o)$(tstdir) : $(o)$(tstdir)
$(rscObjects)$(tstdir) : $(rscObjects)$(tstdir)
$(reqdObjs)$(tstdir) : $(reqdObjs)$(tstdir)
# Define macros for files included in our link and resource merge
basicObjs = \
$(o)basic.mo \
$(mdlLibs)ditemlib.dlo
basicRscs = \
$(o)basic.mp \
$(o)basiccmd.rsc \
$(o)basictyp.rsc
# Generate command table include & resource file using rcomp
$(genSrc)basiccmd.h : $(BaseDir)basiccmd.r
$(o)basiccmd.rsc : $(BaseDir)basiccmd.r
# Create & compile the application's type resource file using rsctype
# and rcomp
$(o)basictyp.r : $(BaseDir)basictyp.mt $(BaseDir)basic.h
$(o)basictyp.rsc : $(o)basictyp.r $(BaseDir)basic.h
# Compile the MDL source file using mcomp
$(o)basic.mo : $(BaseDir)basic.mc $(BaseDir)basic.h
# Link MDL program file from basic.mo & ditemlib.dlo using rlink
$(o)basic.mp : $(basicObjs)
$(msg)
> $(o)make.opt
$(linkOpts)
-a$@
$(basicObjs)
<
$(MLinkCmd) @$(o)make.opt
~time
# Merge the dialog resources & MDL program file using rlib
$(reqdObjs)basic.mi : $(basicRscs)
-o$@
$(basicRscs)
$(RLibCmd) @$(o)make.opt
# complete construction of the .ma by getting the last resource.
%include $(BaseDir)basicrsc.mki
-------------------------------------------
The dev file is at :
c:\Bentley\Program\MicroStation\jmdl\bin\mstndevvars.bat
--------------------------------------
The files I have in the "basic" folder are:
basic.h
basic.mc
basic.r
basiccmd.r
basictyp.mt
basic.mke
basicrsc.mki
--------------there is another subfolder "english" that has the following files:
basicmsg.r
basictxt.h
--------------that's all
Unknown said: I am working with Mstn J, I have both installed in this PC. MJ and V8i Select 3
If you want to build an application for MicroStation/J, then you should use the mstndevvars.bat found in that version's \MDL folder tree. I think it's in the \MDL\jmdl sub-folder.
How about Windows environment variable MS? Is that defined? If defined, is it pointing at the MicroStation/J folder?
Yes you are right I am working with the mstndevvars.bat from the jmdl folder, which is the one I posted initailly.
Can you tell what is the text I need to add at the end of the executable shorcut to get the list of all system variables? I can not make it work. I tried: -ddebug. And it should give a text file with the whole list. That way you can see what I have. Thanks
attached is the full text from the msdebug.txt
[admin note: text "moved" to a file and attached to post]
Unknown said: What is the text I need to add at the end of the executable shorcut to get the list of all system variables?
Read this article about MicroStation command-line switches.