FWH 14.06
- TimStone
- Posts: 2968
- Joined: Fri Oct 07, 2005 1:45 pm
- Location: Trabuco Canyon, CA USA
- Has thanked: 25 times
- Been thanked: 6 times
- Contact:
FWH 14.06
Does 14.06, building with FWH Microsoft libraries and Visual C 2013, require MSVCR120.dll ?
I have no problem on my test machine, but on a client's computer I now see an error saying the file is not found. This was fine with 14.04 but not 14.06.
If so, where must the file be installed ? Is it native to Win 8.1 ?
Tim
I have no problem on my test machine, but on a client's computer I now see an error saying the file is not found. This was fine with 14.04 but not 14.06.
If so, where must the file be installed ? Is it native to Win 8.1 ?
Tim
Tim Stone
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
Re: FWH 14.06
Tim,
I am going to check it and I will get back to you, thanks for your so valuable feedback as always
I am going to check it and I will get back to you, thanks for your so valuable feedback as always
- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
Re: FWH 14.06
Tim,
I just built samples\tutor02.exe and see the import libraries that are required:
It seems as we are using a function of those shown on the right side that are requesting the use of such DLL.
Please download pe.exe from here and check your import libs for your EXE for 14.04 and 14.06:
https://bitbucket.org/fivetech/fivewin-contributions/downloads/peinfo.exe

I just built samples\tutor02.exe and see the import libraries that are required:
It seems as we are using a function of those shown on the right side that are requesting the use of such DLL.
Please download pe.exe from here and check your import libs for your EXE for 14.04 and 14.06:
https://bitbucket.org/fivetech/fivewin-contributions/downloads/peinfo.exe

- TimStone
- Posts: 2968
- Joined: Fri Oct 07, 2005 1:45 pm
- Location: Trabuco Canyon, CA USA
- Has thanked: 25 times
- Been thanked: 6 times
- Contact:
Re: FWH 14.06
Thanks for the link.
MSVCR120.dll is the only file that is newly required. It is not called in 14.04 but is called in 14.06. Everything about the build ( source, configuration, etc ) is the same except for the FWH libraries.
In Windows 8 and 8.1, Microsoft no longer distributes the C runtime libraries that may be needed by the program. As a result, we must distribute this file. We are allowed to by Microsoft, but we can only send the required runtime files.
The file is found in the Program Files (x86)\ Microsoft Visual Studio 12.0\VC\redist\x86\MicrosoftVC120.CRT. Place the file in the same directory as the executable. This will then preclude conflicts with other installed versions of the same file.
I have tested this on the machine in question and it now works fine. We probably don't see the problem when building our applications because these files are installed with Visual Studio Professional ( and above ).
Tim
MSVCR120.dll is the only file that is newly required. It is not called in 14.04 but is called in 14.06. Everything about the build ( source, configuration, etc ) is the same except for the FWH libraries.
In Windows 8 and 8.1, Microsoft no longer distributes the C runtime libraries that may be needed by the program. As a result, we must distribute this file. We are allowed to by Microsoft, but we can only send the required runtime files.
The file is found in the Program Files (x86)\ Microsoft Visual Studio 12.0\VC\redist\x86\MicrosoftVC120.CRT. Place the file in the same directory as the executable. This will then preclude conflicts with other installed versions of the same file.
I have tested this on the machine in question and it now works fine. We probably don't see the problem when building our applications because these files are installed with Visual Studio Professional ( and above ).
Tim
Tim Stone
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
Re: FWH 14.06
Tim,
The difference comes from the flags that we suply to the linker:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:libc /NODEFAULTLIB:msvcrt
Using /NODEFAULTLIB:msvcrt we tell the linker not to use the MSVCR120.dll
But then, we get some symbols to resolve. I am checking them now
The difference comes from the flags that we suply to the linker:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:libc /NODEFAULTLIB:msvcrt
Using /NODEFAULTLIB:msvcrt we tell the linker not to use the MSVCR120.dll
But then, we get some symbols to resolve. I am checking them now

- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
Re: FWH 14.06
Tim,
I am sending you modified FWH libs that does not require the MSVCR120.dll
The link flags to use from buildh32.bat are these:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:libc /NODEFAULTLIB:msvcrt
Still we get some warnings to clean, but the DLL is not loner needed
I am sending you modified FWH libs that does not require the MSVCR120.dll
The link flags to use from buildh32.bat are these:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:libc /NODEFAULTLIB:msvcrt
Still we get some warnings to clean, but the DLL is not loner needed

- TimStone
- Posts: 2968
- Joined: Fri Oct 07, 2005 1:45 pm
- Location: Trabuco Canyon, CA USA
- Has thanked: 25 times
- Been thanked: 6 times
- Contact:
Re: FWH 14.06
Adding the NODEFAULTLIB:MSVCRT results in the following errors:
FiveHC32.lib(MSGS.obj) : error LNK2019: unresolved external symbol __imp__sprintf referenced in function _LToStr
FiveHC32.lib(FWBMP.obj) : error LNK2019: unresolved external symbol __imp__strstr referenced in function _HB_FUN_PALBTNPAINT
Thus it cannot build
Tim
FiveHC32.lib(MSGS.obj) : error LNK2019: unresolved external symbol __imp__sprintf referenced in function _LToStr
FiveHC32.lib(FWBMP.obj) : error LNK2019: unresolved external symbol __imp__strstr referenced in function _HB_FUN_PALBTNPAINT
Thus it cannot build
Tim
Tim Stone
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
Re: FWH 14.06
Antonio,
This is related to the same issue I brought up shortly after 14.06 was released, and is part of the reason I cannot use 14.06 at all. As Tim noted 14.04 is just fine, but the build changes that were applied for 14.06 broke a number of things. You'll also remember only the 32 bit libraries were broken, the 64 bit libraries were working when I last tested. Would you please email the modified libraries to me as well.
Robb
This is related to the same issue I brought up shortly after 14.06 was released, and is part of the reason I cannot use 14.06 at all. As Tim noted 14.04 is just fine, but the build changes that were applied for 14.06 broke a number of things. You'll also remember only the 32 bit libraries were broken, the 64 bit libraries were working when I last tested. Would you please email the modified libraries to me as well.
Robb
- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
Re: FWH 14.06
Tim, Robb,
I am almost done with all the fixes and we will cleanly build it
It may be ready for tomorrow
I am almost done with all the fixes and we will cleanly build it

It may be ready for tomorrow
- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
Re: FWH 14.06
Tim, Robb,
Fixed. Just remember to call the MS link this way:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:libc /NODEFAULTLIB:msvcrt
Now see what we get:
I am sending you the modified FWH libs, thanks!
Fixed. Just remember to call the MS link this way:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:libc /NODEFAULTLIB:msvcrt
Now see what we get:
Compiling...
Harbour 3.2.0dev (r1406271520)
Copyright (c) 1999-2014, http://harbour-project.org/
Compiling 'tutor02.prg' and generating preprocessed output to 'tutor02.ppo'...
Lines 4225, Functions/Procedures 1
Generating C source output to 'tutor02.c'... Done.
Microsoft (R) C/C++ Optimizing Compiler Version 18.00.30501 for x86
Copyright (C) Microsoft Corporation. All rights reserved.
tutor02.c
Creating library tutor02.lib and object tutor02.exp
* Application successfully built *
I am sending you the modified FWH libs, thanks!
- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
Re: FWH 14.06
Even simpler 
We just can use:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:msvcrt
So we instruct the linker to never use the MSVCRT DLL

We just can use:
"%VCINSTALLDIR%"bin\link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:msvcrt
So we instruct the linker to never use the MSVCRT DLL
- Antonio Linares
- Site Admin
- Posts: 42831
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 155 times
- Been thanked: 119 times
- Contact:
- TimStone
- Posts: 2968
- Joined: Fri Oct 07, 2005 1:45 pm
- Location: Trabuco Canyon, CA USA
- Has thanked: 25 times
- Been thanked: 6 times
- Contact:
Re: FWH 14.06
Sorry for the delay in responding. I did build with the new lib using my UEStudio build file and VC 2013. I had no problems using the latest library you supplied and I was also able to run the resulting program on a computer where MSVCRT was not installed.
Thank you.
I will test with Visual Studio 2013 internal build later today but I see no reason why it won't work just as well.
TIm
Thank you.
I will test with Visual Studio 2013 internal build later today but I see no reason why it won't work just as well.
TIm
Tim Stone
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit