Closed Bug 276418 Opened 20 years ago Closed 18 years ago

Fix MSVS section ... add/test Free MS tools options

Categories

(Developer Documentation Graveyard :: General, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: woodie, Assigned: endico)

References

()

Details

Attachments

(4 files)

It should be noted that the Processor Pack will only install 
into VisualStudio Enterprise and Professional (not Standard).

The MASM32 project uses the ml, link and lib binaries under licence,
so another option is to install it and put c:\masm32 in your path.
We need the verify that issues this this won't be a problem:
c:/mozilla/jpeg/jdapimin.c(508) ... unsupported inline assembly opcode

  http://www.masm32.com/  http://www.masm32.com/masmdl.htm

Further, mozilla should probably compile using 
the free Visual C++ Toolkit and Platform Core SDK:

  http://msdn.microsoft.com/visualc/vctoolkit2003/
  http://www.microsoft.com/msdownload/platformsdk/sdkupdate/

It has been suggested that it may be possible to create
the import libraries for the MSVC7 c-runtime DLLs by 
compiling the c-runtime source code (which may be included)

  http://2wp.vei.ru/files/msvc7dlls.rar
  http://www.dll-files.com/dllindex/dll-files.shtml?msvcp70
  http://www.dll-files.com/dllindex/dll-files.shtml?msvcr70

I am confident there will be many other little issues...
It was suggested that GoAsm.exe could be used instead of ml.exe:

  http://www.jorgon.freeserve.co.uk/GoasmHelp/GoAsm.htm#aims

The "Go" development tools: http://www.godevtool.com/
The Microsoft FAQ states...

In Visual C++ 6.0, Professional and Enterprise customers could get the Microsoft
Assembler (MASM) by downloading VC++ 6.0 Processor Pack.  Today MASM ships with
Visual Studio .NET Professional and Enterprise as part of Visual C++.  ML.EXE is
located in the VC7\bin directory.
These two packages provide most of the tools you need...

Microsoft Platform SDK for Windows XP SP2:  Midl.exe, RC.exe, Uuidgen.exe

Microsoft Visual C++ Toolkit 2003:  cl.exe, link.exe

This techniques here seem to work for creating lib using link /LIB:
http://sapdb.2scale.net/moin.cgi/MS_20C_2b_2b_20Toolkit
Another great page that describes environment 
setup and how-to create missing lib files:
http://libsh.sourceforge.net/win32/build.html
 
Note: The lib.exe in c:\masm32\bin was not working,
so I renamed it _lib.exe and compiled the lib.c
linked to in comment #3
Well, here seems to be instructions for building with free tools:
http://63.246.131.156/firefox/TierMann/page/building/
Now that the XP SP@ PSDK is available, these three SDKs should do it:

Microsoft Visual C++ Toolkit 2003
http://msdn.microsoft.com/visualc/vctoolkit2003/

Windows XP SP2 Platform SDK 
http://download.microsoft.com/download/platformsdk/sdk/update/WIN98MeXP/EN-US/2600.2180/psdk-x86.exe

Windows.NET Framework SDK Version 1.1
http://go.microsoft.com/?linkid=1644915
Required LIBs and DLLs are included in these downloads:

  Microsoft .NET Framework Version 1.1 Language Pack
  http://go.microsoft.com/?linkid=664174

  Microsoft .NET Framework Version 1.1 Redistributable Package
  http://go.microsoft.com/fwlink/?LinkId=9104
Oops, the 'Language Pack' link (above) should be this:

  Microsoft .NET Framework SDK Version 1.1
  http://go.microsoft.com/fwlink/?LinkId=8684
The best way to get the Microsoft Macro Assembler 6.15 is buy this book:
Assembly Language for Intel-Based Computers (4th Edition)

If you already have the 3rd Edition (included 6.13) or earlier, 
you can simply download the latest version of the from the book site:

  MASM 6.15 and the book's example programs (masmsetup.exe, 3.6 MB).
  http://nuvisionmiami.com/books/asm/secure/masmsetup.exe

If you already have some old version from some other book,
you can upgrade it to 6.14 with this patch:

  PATCH: ML614.exe 6.14 patch available
  http://support.microsoft.com/kb/q228454/
Assembly Language for Intel-Based Computers (3rd Edition) used & new from $3.92
http://www.amazon.com/exec/obidos/tg/stores/offering/list/-/0136603904/all/ref=dp_primary-product-display_1/103-3525016-5722242
Other ways to have a legal copy of the Microsoft Macro Assembler...

Previously Microsoft made their MASM available free 
in their free Windows 98 DDK. The DDK is however no longer available 
(probably because Microsoft has withdrawn their support of Windows 98). 

Introduction to 80X86 Assembly Language and Computer Architecture
http://www.amazon.com/gp/product/offer-listing/0763717738/ref=dp_primary-product-display_1//102-7263656-8900954?condition=all
The CD-ROM contains Microsoft's MASM assembler, debugger WinDbg, and linker,
along with complete source code and the author's own software to facilitate I/O. 
(In reply to comment #10)
It seems that this link now invalid (as of 05/04/2004), the author now says...

If your book does not have an enclosed CD-ROM, the book is defective and should
be returned to the bookstore. (This particularly applies to used copies of the
book.) The CD-ROM cannot be downloaded from any Web site. If your book has the
original CD-ROM and the latter is damaged or defective, you can have it
replaced. Send the defective disk, along with your name and address, to:
Computer Science Editor, Pearson Education, 1 Lake Street, Upper Saddle River,
NJ 07458

http://www.nuvisionmiami.com/books/asm/files/getStarted/gettingstarted.htm
Download the Win98 DDK and upgrade the included Macro Assembler 6.11d

Windows 98 Driver Development Kit (DDK)
http://download.microsoft.com/download/win98SE/Install/Gold/W98/EN-US/98DDK.EXE


Run the installer. On the 'DDK Component Groups' page, 
select 'Build Environment', click the 'Details' button, 
and deselect Headers and Libraries. Now download the patch:

PATCH: ML614.exe 6.14 patch available
http://download.microsoft.com/download/masm61/patch/6.14/w9xnt4/en-us/ml614.exe


Run ml614.exe to expand the files. Change your directory to C:\98DDK\bin\win98
and copy 3 PATCH files there, and run PATCH. Now you have version 6.14.8444.
The MASM license agreement from Kip Irvine's book,
Assembly Language for Intel-Based Computers (4th Edition),
should be evaluated closely, but looks good for our needs.

and here is the license from MASM32, which we will not use:
http://www.masm32.com/mlicence.htm
(In reply to comment #14)

The DDK link has already stopped working...
(In reply to comment #16 and comment #14)

The DDK link seems to work most-of-the-time.
I'll be hearing back from MS if this is OK to publish.

---------------

Legitimate ways to obtain MASM will be here:
http://www.netpress.com/masm/
Any configuration that is not using the Processor Pack,
which likely includes VC Toolkit and .NET SDK,
may suffer from not having the fpieee.h and malloc.h
(or other header files) that are installed by Processor Pack.
Regarding masm32, this post cleary states the stiuation:
http://www.masmforum.com/simple/index.php?topic=171.msg906#msg906

Microsoft have advised that they will enforce their rights of ownership under
the EULA if it used for projects for non-Microsoft Operating Systems or Open
source projects so neither type of project should be undertaken using the WIN98
binaries.
Anything else needs to be done here? The document was moved to http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites and updated multiple times.

http://developer.mozilla.org/en/docs/Building_with_VC8_Express has info on building with VC2005 express (which is free).
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → WORKSFORME
Component: Mozilla Developer → Documentation Requests
Product: Documentation → Mozilla Developer Center
Component: Documentation Requests → Documentation
Component: Documentation → General
Product: Mozilla Developer Network → Developer Documentation
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: