At 10:08 01/08/2001 +0200, Cynic wrote:
Hi Cynic,

>Hi Miguel,
>
>I'm forwarding you this as suggested by John Dean. Can you comment?

First I agree with you that is necessary to introduce in our
literature the instructions how to build from the source the
MySQL Win32 stuff.
However in my opinion, first I need to change the workspace
taking out the dependencies of the clients from the servers,
since the today workspace was structured for build the complete
binary distribution.

About the asm files, I don't know nothing about the assembler
language, so I can't to say you what are the advantages to
take out or to maintain them in the tree. I have myself limited to
read the articles from Microsoft and seems to me that the code
developed with the older masm.exe needs to be prepared for to
be compiled with the new ml.exe assembler shipped with the
vcpp.exe or vcpp5.exe packages. I will comment this issue with
Monty to decide how to handle the compilation or making the instructions
for the people that don't have or not want to use the assembler.

Regards,
Miguel



>------beginning of quote------
> >X-Sender: [EMAIL PROTECTED]
> >X-Mailer: QUALCOMM Windows Eudora Version 5.1
> >Date: Wed, 01 Aug 2001 08:51:07 +0100
> >To: Cynic <[EMAIL PROTECTED]>
> >From: John Dean <[EMAIL PROTECTED]>
> >Subject: Re: win32 build process & docs (was: Re: Why can't I compile
> >  the mysql workspace?)
> >Mime-Version: 1.0
> >
> >At 09:19 01/08/2001 +0200, you wrote:
> >>Hi John,
> >>
> >>it's been some time since this thread, and I've come across this
> >>mail looking for something unrelated, but I thought it'd be worth
> >>it bring it up again...
> >>
> >>I think this (the MASM issue) was just an example of the poor state
> >>of the compilation instructions for win32 systems -- there are NONE.
> >
> >Agreed
> >
> >
> >>I have following suggestions:
> >>
> >>1) The "2.7 Installing a MySQL Source Distribution" manual section
> >>   should be divided into "Unix" and "win32" chapters:
> >>
> >>2.7 Installing a MySQL Source Distribution
> >>    2.7.1 Unix
> >>        2.7.1.1 Quick Installation Overview
> >>        2.7.1.2 Applying Patches
> >>        2.7.1.3 Typical configure Options
> >>    2.7.2 Windows
> >>        ...
> >
> >Agreed
> >
> >
> >>2) The default config should NOT use MASM.
> >>   This would allow more people build MySQL easily.
> >
> >I hate this. I don't have MASM either so it is a pain in the neck to 
> change this with each new distro. It only applies to a debug build
> >
> >
> >>3) The procedure for enabling MASM should be documented.
> >>   If you don't do 2), it's necessary that you clearly state that
> >>   MASM is expected, and what to do to build MySQL without it.
> >
> >I agree
> >
> >
> >>4) Something needs to be done for the free version of MASM 6.x
> >>   which does NOT include masm.exe (in the commercial version this
> >>   executable just calls ml.exe).
> >>   I don't know how to solve this in absence of autoconf and stuff,
> >>   but you could possibly take a look how others do it. :)
> >>   For example, building Apache 1.3 from source on win32 systems
> >>   requires sed. Maybe you could test for the presence of masm.exe,
> >>   if it is not present, assume ml.exe, and rewrite the project file
> >>   on the fly accordingly. But than again, this might not be required,
> >>   since MASM 5.x is obsolete, and ml.exe is in both the commercial
> >>   and free versions of MASM 6.x?
> >
> >I think the assembler step should be taken out, since not everybody has MASM
> >
> >
> >>5) As you said in your mail this one replies to, even with the
> >>   project file hand-editted for ml.exe, the build fails on pre-SP3
> >>   versions of Visual Studio. Again, this is not documented.
> >
> >I always change the assembler step to use the C modules of the same name 
> so I am not aware of this
> >BTW Miguel in the person responsible for maintaining the project files 
> may be you should send this to him - [EMAIL PROTECTED]
> >
> >
> >>BTW, the clean "target" in the workspace fails to remove a previously
> >>compiled libmySQL.lib:
> >>
> >>--------------------Configuration: libmySQL - Win32 
> Release--------------------
> >>[...]
> >>Linking...
> >>xilink6: executing 'D:\MSDEV\VC98\bin\link.exe'
> >>   Creating library release/libmySQL.lib and object release/libmySQL.exp
> >>Move DLL export lib
> >>Overwrite D:\compile\mysql\lib_release\libmySQL.lib (Yes/No/All)? ?N(
> >>Overwrite D:\compile\mysql\lib_release\libmySQL.lib (Yes/No/All)?
> >>Error executing c:\winnt\system32\cmd.exe.
> >>
> >>mysqld-max-nt.exe - 1 error(s), 0 warning(s)
> >>
> >>Possible solution: add the Y option to the xcopy command
> >>
> >>Also, the debug build installs libmysql.lib in C:\winnt\system32\ !
> >>(libmysql/libmysql.dsp, that is)
> >>1) you cannot assume that NT is installed in that location
> >>2) it should not do it in the first place
> >>
> >>I'd like to help you guys with this, so if you decide HOW things
> >>should be done, I can do the grunt work.
> >>
> >>Best regards
> >>
> >>At 09:00 3/16/2001, John Dean wrote the following:
> >>--------------------------------------------------------------
> >>>Hi
> >>>At 11:13 15/03/2001 +0100, Cynic wrote:
> >>>>Hi Joachim & Jorge,
> >>>>
> >>>>I had the same problem. Looks like it's not possible to build
> >>>>MySQL with MASM 6.xx. I got to the point where it actually
> >>>>seems to assemble the asm files just fine, but the assembler
> >>>>invokes linker with garbage for options, and the link fails.
> >>>
> >>>The problem is with the linker that comes with MASM because it can do 
> file/directory names which contain spaces. The updates in SP3 overcome 
> this problem
> >>>
> >>>
> >>>>I include a mail I sent to Miguel Angel Solórzano, I haven't
> >>>>heard from him since then, but maybe you can figure it out.
> >>>>
> >>>>
> >>>>At 20:59 27.2. 2001, Miguel Angel Solórzano wrote the following:
> >>>>--------------------------------------------------------------
> >>>>>At 20:37 27/02/2001 +0100, you wrote:
> >>>>>Hi!
> >>>>>>Hi Miguel,
> >>>>>>
> >>>>>>thanks for the reply. I will eventually go that route, but would
> >>>>>>nevertheless like to compile MySQL with the ASM code. Can you
> >>>>>>tell me where can I get MASM if not from the Processor Pack
> >>>>>>package? Microsoft Product Catalog entry for MASM at
> >>>>>>http://www.microsoft.com/catalog/display.asp?subid=22&site=10547
> >>>>>>links to "Macro Assembler 6.15 Web Site" at
> >>>>>>http://msdn.microsoft.com/vstudio/downloads/ppack/default.asp
> >>>>>>which is titled "Visual C++ 6.0 Processor Pack", and I have
> >>>>>>already downladed and installed it.
> >>>>>
> >>>>>I thought that the macro assembler package is a commercial
> >>>>>product and not a free package.
> >>>>>Anyway if you have it on hands, install the masm package for example
> >>>>>at c:\masm. Open the strings tree and complete the setting of the
> >>>>>*.asm files adding to the command of the Custom Build the path:
> >>>>>c:\masm\masm -Mx...
> >>>>>I am using the version 5.10, so I can't to say you if exists any
> >>>>>problem to compile our stuff with the new version.
> >>>>
> >>>>Hi Miguel,
> >>>>
> >>>>Microsoft both sells and gives away MASM. The free version is,
> >>>>of course, stripped down a bit, but AFAICT not in a way so as to
> >>>>render it useless with regards to compilation of MySQL:
> >>>>
> >>>>http://www2.dgsys.com/~raymoon/faq/masm.html#9
> >>>>
> >>>>>9.2 WHAT THIS MASM IS NOT
> >>>>>This is not the same as purchasing MASM product. The linker is 32
> >>>>>bit and will not create 16-bit DOS programs. Also, the Programmer’s
> >>>>>Work Bench nor CodeView for debugging are included in the full DDK.
> >>>>>
> >>>>>NOTE: The linker that comes with the DDK will not produce 16-bit
> >>>>>applications for DOS. To do this, you must have Microsoft’s Linker
> >>>>>version 5.63 that is available from Microsoft’s FTP site.
> >>>>
> >>>>BTW, the Processor Pack I installed contains MASM (or should I rather
> >>>>say ml.exe?) v 6.15.
> >>>>
> >>>>I poked around the web some more, and found the following info:
> >>>>
> >>>>>The MASM program converts command-line options from MASM style
> >>>>>to ML style, adds options to maximize compatibility, and calls
> >>>>>ML.EXE.
> >>>>>
> >>>>>Note
> >>>>>MASM.EXE is provided to maintain compatibility with old makefiles.
> >>>>>For new makefiles, use the more powerful ML driver.
> >>>>
> >>>>Well, the free version doesn't contain masm.exe, only ml.exe. Looks
> >>>>like ml supercedes masm. I changed the custom build steps for
> >>>>strings/strings.asm and strings/strxmov.asm to reflect ml's parameter
> >>>>syntax, i. e.
> >>>>masm -Mx -t -DDOS386 -DM_I386 $(InputPath),$(Outdir)\$(InputName).obj,,,
> >>>>=>
> >>>>ml -Cx -Zm -nologo -DDOS386 -DM_I386 $(InputPath) 
> $(OutDir)\$(InputName).obj
> >>>>
> >>>>and got this:
> >>>>
> >>>>--------------------Configuration: strings - Win32 
> Release--------------------
> >>>>Performing Custom Build Step on .\Strings.asm
> >>>> Assembling: .\Strings.asm
> >>>>Microsoft (R) Incremental Linker Version 6.00.8447
> >>>>Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
> >>>>/z2
> >>>>"Strings.obj+"
> >>>>".\release\Strings.obj"
> >>>>"Strings.exe"
> >>>>NUL
> >>>>LINK : warning LNK4044: unrecognized option "z2"; ignored
> >>>>LINK : fatal error LNK1181: cannot open input file "Strings.obj+"
> >>>>Error executing c:\winnt\system32\cmd.exe.
> >>>>
> >>>>mysqld-nt.exe - 1 error(s), 1 warning(s)
> >>>>
> >>>>Note the "+" sign appended to strings.obj name. I'm not faimiliar with
> >>>>VS enough to solve this.
> >>>>
> >>>>If this is solved, people interested in building MySQL on win32 machines
> >>>>will be able to benefit from the assembler code without the need to buy
> >>>>the commercial version of MASM. And that would be a Good Thing(tm), IMO.
> >>>>
> >>>>BTW, the -Zm option is required for compatibility with MASM 5.x, 
> otherwise
> >>>>it emits A2032 on these lines (except ecx,P+SIZEPTR*2[ebp] is actually
> >>>>A2026):
> >>>>
> >>>>        mov     edi,P-SIZEPTR[esp]      ;p1
> >>>>        mov     edi,P-SIZEPTR[esp]      ;to
> >>>>        mov     edi,P-SIZEPTR[esp]      ;p1
> >>>>        mov     edi,P-SIZEPTR[esp]      ; str
> >>>>        mov     edi,P-SIZEPTR[esp]      ; s1
> >>>>        mov     ecx,P+SIZEPTR*2[ebp]    ; Length of memory-area
> >>>>        mov     edi,P-SIZEPTR[esp]      ; EDI -> s1
> >>>>
> >>>>(see http://support.microsoft.com/support/kb/articles/Q119/8/72.asp)
> >>>>
> >>>>>The index operator '[]' is now at the very top of the MASM operator
> >>>>>precedence list, while the binary "+" and "-" operators are in the
> >>>>>lower half.
> >>>>
> >>>>
> >>>>
> >>>>HTH,
> >>>>
> >>>>Cynic
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>At 00:39 15.3. 2001, Jorge del Conde wrote the following:
> >>>>--------------------------------------------------------------
> >>>>>Hi,
> >>>>>
> >>>>>You need to have MASM installed.
> >>>>>
> >>>>>The easiest way to compile mysql in windows is to copy all the files 
> from
> >>>>><mysql>\strings\noMASM to <mysql>\strings.
> >>>>>
> >>>>>
> >>>>>Regards,
> >>>>>Jorge
> >>>>>
> >>>>>----- Original Message -----
> >>>>>From: "Joachim Persson" <[EMAIL PROTECTED]>
> >>>>>To: <[EMAIL PROTECTED]>
> >>>>>Sent: Wednesday, March 14, 2001 4:17 PM
> >>>>>Subject: Why can't I compile the mysql workspace?
> >>>>>
> >>>>>
> >>>>>> Hi,
> >>>>>> There is an error when performing Custom Build Step on .\Strxmov.asm
> >>>>>saying
> >>>>>> something about that masm not is an internal command, external 
> command,
> >>>>>> program och command file. How do I solve this problem?
> >>>>>> /Joachim
> >>>>>>
> >>>>>>
> >>>>------end of quote------
> >>>>
> >>>>
> >>>>[EMAIL PROTECTED]
> >>>
> >>>Regards
> >>>John
> >>>
> >>>MySQL Development Team
> >>------end of quote------
> >>
> >>
> >>[EMAIL PROTECTED]
> >>-------------
> >>And the eyes of them both were opened and they saw that their files
> >>were world readable and writable, so they chmoded 600 their files.
> >>    - Book of Installation chapt 3 sec 7
> >
> >Regards
> >John
> >
> >--
>------end of quote------
>
>
>[EMAIL PROTECTED]
>-------------
>And the eyes of them both were opened and they saw that their files
>were world readable and writable, so they chmoded 600 their files.
>     - Book of Installation chapt 3 sec 7

-- 
For technical support contracts, goto https://order.mysql.com/
    __  ___     ___ ____  __
   /  |/  /_ __/ __/ __ \/ /    Miguel A. Solórzano <[EMAIL PROTECTED]>
  / /|_/ / // /\ \/ /_/ / /__   MySQL AB, FullTime Developer
/_/  /_/\_, /___/\___\_\___/   Mogi das Cruzes - São Paulo, Brazil
        <___/   www.mysql.com


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to