[liblouis-liblouisxml] Re: Windows build try again

  • From: "Paul Wood (Torch)" <paulw@xxxxxxxxxxxxxx>
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Thu, 9 Jun 2016 10:24:29 +0100

Thanks Davy, yes that was the missing link!

Arend shared that with me , sorry I didn't update the list, meant to do that!

Got it working and also with liblouisutdml, I have added a push to the liblouisutdml code to update something in config.h which stopped the build. I hope the push will be added as I had discovered the issue before and forgotten about it!

Here is Arends reply which he is happy to share:

Hi Paul,
Since I am pressed for time at the moment, I did only a quick compilation test.
Below is a description how LibLouis.dll can be build on the command line, see also the attachments.
Building on the command line (from the Microsoft Visual Studio manual):
******************************************************************************
Visual C++ Concepts: Building a C/C++ Program   


  Setting the Path and Environment Variables for Command-Line Builds

The vcvars32.bat file sets the appropriate environment variables to enable command-line builds.

Note that if you are doing command-line builds with DEVENV, vcvars32 settings will have no affect on your builds, unless you also specify the /useenv option.

*To run vcvars32.bat*

 1. At the command prompt, change to the \bin subdirectory of your
    Visual C++ installation.
 2. Run vcvars32.bat by typing |VCVARS32|.

    *Caution*   The vcvars32.bat file can vary from computer to
    computer. Do not replace a missing or damaged vcvars32.bat file
    with a vcvars32.bat from another computer. Rerun Visual C++ Setup
    to replace the missing file.

For more information about vcvars32.bat, see the following Knowledge Base article:

  * Q248802 : Vcvars32.bat Generates Out of Environment Message

If the current version of Visual C++ is installed on a computer that also has a previous version of Visual C++, you should not run vcvars32.bat from different versions in the same command window.

CL.exe invokes the preprocessor and compiler, and LINK.exe invokes the linker. (CL can invoke the linker as well, so you do not have to invoke LINK directly in most cases.)

CL.exe, LINK.exe, and other command-line tools require that certain environment variables be properly set:

  * CL uses CL and INCLUDE.
  * LINK uses LINK, LIB, PATH, and TMP.

*************************************************************
Note. On my system the bin directory is: C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Vc7\bin
After this go to the directory with the project.
On my system this is: C:\Users\Arend\Documents\TactileView\LibLouis\liblouis-2.6.4test (I copied this map from ...\liblouis-2.6.4 to check the compilation)
Go to the windows submap and run the command nmake makefile.nmake
See the attachment with the copy of the screen.
I also included the resulting liblouis.dll.
I did not test the result itself.
So the most important thing is probably to set the environvariables first with vcvars32.bat. I find this procedure rather lengthy with all the path selections.
May be there is a better way.
Please not that this version of LibLouis.dll has some slight modifications.
Best Regards,
Arend Arends

On 09/06/2016 07:16, Davy Kager wrote:
Paulw.torchtrust signature

Hi,

Have you tried building from the Visual Studio shell or, alternatively, first running vcvars32.bat?

*Van:*liblouis-liblouisxml-bounce@xxxxxxxxxxxxx [mailto:liblouis-liblouisxml-bounce@xxxxxxxxxxxxx] *Namens *Paul Wood (Torch)
*Verzonden:* woensdag 8 juni 2016 12:54
*Aan:* liblouis-liblouisxml@xxxxxxxxxxxxx
*Onderwerp:* [liblouis-liblouisxml] Windows build try again

So I thought I would try and build in MSVC as some had had success, but have soon hit a problem. I'll share it in case a) somebody already know the answer and b) so that it's recorded on the list for future.

C:\liblouis-2.6.5\windows>nmake /f Makefile.nmake
Microsoft (R) Program Maintenance Utility Version 14.00.23026.0
Copyright (C) Microsoft Corporation.  All rights reserved.
         cl.exe /nologo /O2 /W3 /c -D_CRT_NONSTDC_NO_DEPRECATE 
-D_CRT_SECURE_NO_W
ARNINGS /Iinclude /DWIDECHAR_TYPE="unsigned short int" /DUNICODEBITS=16 ..\liblo
uis\compileTranslationTable.c
compileTranslationTable.c
..\liblouis\compileTranslationTable.c(30): fatal error C1083: Cannot open includ
e file: 'stddef.h': No such file or directory
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0
\VC\bin\cl.exe"' : return code '0x2'
Stop.

So It can't find part of common includes which could be part of windows SDK of CRT, but including those paths didn't work so does a config file need to be changed or environment etc.?

Thanks
Paul

--

Paul Wood, Chief Technical Officer
*Torch Trust*
Torch House, Torch Way,
Market Harborough, Leics. LE16 9HL, UK
Direct Line: *+44(0)1858 438269*
Tel: *+44(0)1858 438260*, Fax: *+44(0)1858 438275*
Email: paulw@xxxxxxxxxxxxxx <mailto:paulw@xxxxxxxxxxxxxx>
Website: www.torchtrust.org <http://www.torchtrust.org/>

____________________________________________________

Chief Executive: Dr Gordon Temple
Charity No. 1095904

Privileged/Confidential Information may be contained in this message.
If you are not the intended recipient please destroy this message
and kindly notify the sender by reply email. The computer from which
this mail originates is equipped with virus screening software.
However Torch Trust cannot guarantee that the mail and its attachments
are free from virus infection.

DISCLAIMER:
De informatie verzonden met dit e-mail bericht is uitsluitend bestemd voor de geadresseerde. Indien u niet de beoogde geadresseerde bent, verzoeken wij u vriendelijk dit aan de afzender te melden (of via: info@xxxxxxxxxx <mailto:info@xxxxxxxxxx>) en het origineel en eventuele kopieën te verwijderen.

The information sent in this e-mail is solely intended for the individual or company to whom it is addressed. If you received this message in error, please notify the sender immediately (or mail to info@xxxxxxxxxx <mailto:info@xxxxxxxxxx>) and delete the original message and possible copies.


--
Paulw.torchtrust signature

Paul Wood, Chief Technical Officer
*Torch Trust*
Torch House, Torch Way,
Market Harborough, Leics. LE16 9HL, UK
Direct Line: *+44(0)1858 438269*
Tel: *+44(0)1858 438260*, Fax: *+44(0)1858 438275*
Email: paulw@xxxxxxxxxxxxxx <mailto:paulw@xxxxxxxxxxxxxx>
Website: www.torchtrust.org <http://www.torchtrust.org/>

____________________________________________________

Chief Executive: Dr Gordon Temple
Charity No. 1095904

Privileged/Confidential Information may be contained in this message.
If you are not the intended recipient please destroy this message
and kindly notify the sender by reply email. The computer from which
this mail originates is equipped with virus screening software.
However Torch Trust cannot guarantee that the mail and its attachments
are free from virus infection.

Other related posts: