News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change

Main Menu

having issue with .net ml assembler

Started by ggmasm32, January 12, 2016, 06:50:51 PM

Previous topic - Next topic

ggmasm32

Hello, there i did lot of 16-bit using masm16 bit making some effort into moving into 32-bit asm.
Now i ported very small few existing 16-bit asm file and its makefile target into asm32 target however, there is one issue:

Whenever I set ml32 target to generate object file in a different directory (one-level down) it causes an error.
With the same target in 16-bit ml that came with masm32 in WINXP i got no issue.

I am wondering does anyone generate obj file in one directory level deep? the ml switch for that is Fo and I used Foobj\$(OBJNAME),obj

here is my makefile and associated switches:

from below exp (16-bit) target compiles but exp32 target does not (i hi-lighted with bold the compile target), error message is pasted at the bottom for exp32 target.
i compared both masm 16-bit ml's help and .net 2003 ml (32-bit) help they both have exactly same compiler switches.
if i don't specify obj directory for Fo switch thus generating obj files in current directory, it compiles just fine but there are lot of cluttering.
Thanks!


...
# compilers.

CC=cl
ASM=c:\masm32\bin\ml
TCC=tcc
ASM32=ml

# linkers.

TLINK=tlink.exe
LINK32=link.exe
LINK16=link16.exe
LINK=link16

# compiler and linker options.

# /c
# /W3
# /Fm

CCFLAGS=/c /W3 /Fm

# /c    assemble without linking
# /Fl   generate lising
# /Zi   add symbolic debug info
# /Zd   add line number debug info
# /Foobj name object file.

ASMFLAGS=/c /Fl /Zi /Zd /Foobj
ASM32FLAGS=/c /Fl /Zi /Zd /Foobj
...

PMSW=pmsw
EXP=exp
EXP32=exp32

LIB=lib
ACPI=acpi
PMODE=pmode
MEMMGR=memmgr
VIDEO=video
A20TEST=a20test

...

#===32-bit programs===

exp32: $(EXP32).exe stat

$(EXP32).exe: obj\$(EXP32).obj
    $(LINK32) $(LINK32FLAGS) obj\$(EXP32).obj,,,,,

obj\$(EXP32).obj: $(EXP32).asm inc
    $(ASM) $(ASM32FLAGS)\$(EXP32).obj $(EXP32).asm


#===16-bit programs===

exp: $(EXP).exe stat

$(EXP).exe: obj\$(EXP).obj obj\$(LIB).obj obj\$(ACPI).obj obj\$(PMODE).obj obj\$(MEMMGR).obj obj\$(VIDEO).obj
    $(LINK16) obj\$(EXP).obj obj\$(LIB).obj obj\$(ACPI).obj obj\$(PMODE).obj obj\$(MEMMGR).obj obj\$(VIDEO).obj,,,,,



here is the error code:


c:\git\minix.dev\exp>nmake exp32

Microsoft (R) Program Maintenance Utility Version 7.10.3077
Copyright (C) Microsoft Corporation.  All rights reserved.

        c:\masm32\bin\ml /c /Fl /Zi /Zd /Foobj\exp32.obj exp32.asm
Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997.  All rights reserved.

Assembling: exp32.asm
exp32.asm(1) : fatal error A1000: cannot open file : obj\exp32.obj
NMAKE : fatal error U1077: 'c:\masm32\bin\ml' : return code '0x1'
Stop.

c:\git\minix.dev\exp>

jj2007


Grincheux

QuoteNMAKE Fatal Error U1077

Visual Studio 2015 Other Versions

'program' : return code 'value'
The given command or program called by NMAKE failed and returned the given exit code.
To suppress this error and continue the NMAKE session, use the /I option, the .IGNORE dot directive, or the dash (-) command modifier. To continue the NMAKE session for unrelated parts of the dependency tree, use the /K option.

https://msdn.microsoft.com/en-us/library/dt309377.aspx

ggmasm32


TouEnMasm

Quote
Hello, there i did lot of 16-bit using masm16 bit making some effort into moving into 32-bit asm.
Made a search on the forum,this don't seem to be usefull and not possible without too many work.

Fa is a musical note to play with CL