OpenCOBOL Forum Index OpenCOBOL
Bug in cobc for MSVC: mt.exe is called too often | Register To Post |
| Threaded | Newest First | Previous Topic | Next Topic | Bottom |
| Poster | Thread |
|---|---|
| human | Posted on: 2009/9/15 15:08 |
Home away from home ![]() ![]() Joined: 2007/5/15 From: GERMANY Posts: 1416 |
Bug in cobc for MSVC: mt.exe is called too often There is a small bug in cobc.c concerning the following lines
This is done too often, we need another check (not only ret == 0). If you have In the 2nd case there is no manifest, therefore mt.exe fails. human |
| simrw | Posted on: 2009/9/16 10:12 |
Webmaster ![]() ![]() Joined: 2005/5/31 From: Bad Soden, Germany Posts: 791 |
Re: Bug in cobc for MSVC: mt.exe is called too often Looks to me like the "identity" is wrong.
I think those "#2" should be "#1". What status/error does mt report? Roger |
| human | Posted on: 2009/9/16 10:29 |
Home away from home ![]() ![]() Joined: 2007/5/15 From: GERMANY Posts: 1416 |
Re: Bug in cobc for MSVC: mt.exe is called too often As I wrote before the first one with -x works fine, but at the 2nd one there is no manifest at all why mt.exe complains about missing manifest (the .exe itself works fine).
human |
| simrw | Posted on: 2009/9/16 13:24 |
Webmaster ![]() ![]() Joined: 2005/5/31 From: Bad Soden, Germany Posts: 791 |
Re: Bug in cobc for MSVC: mt.exe is called too often What happens when you change as I suggested?
In those calls to "mt", change the ;#2 to ;#1. Roger |
| ska | Posted on: 2009/9/16 14:53 |
Just can't stay away ![]() ![]() Joined: 2008/3/17 From: NYC Posts: 145 |
Re: Bug in cobc for MSVC: mt.exe is called too often Quote:
human wrote: It must be called. There is manifest and I don't see mt.exe failing: Manifest is necessary. I saw exe not running correctly but actually more problems are with DLLs - they could just quietly run incorrectly
|
| human | Posted on: 2009/9/16 15:31 |
Home away from home ![]() ![]() Joined: 2007/5/15 From: GERMANY Posts: 1416 |
Re: Bug in cobc for MSVC: mt.exe is called too often In general mt.exe is VERY necessary when using MSVC >= 8.
There's no difference in using #1 and #2. Original version "cobc.exe -x HELLO.cob -v", Quote: calling: mt /manifest "HELLO.exe.manifest" /outputresource:"HELLO.exe";#2 Original version "cobc -x -o hello-d hello-dynamic.obj -v", Quote: calling: mt /manifest "hello-d.exe.manifest" /outputresource:"hello-d.exe";#2 New version "cobc.exe -x HELLO.cob -v", Quote: calling: mt /manifest "HELLO.exe.manifest" /outputresource:"HELLO.exe";#1 New version "cobc -x -o hello-d hello-dynamic.obj -v", Quote: calling: mt /manifest "hello-d.exe.manifest" /outputresource:"hello-d.exe";#1 All four are working. It seems like there is no need for mt.exe if there is no preprocessing/translating done by OC AND MSVC 2008 is used. Is there a possibility to know this and to not call mt.exe in this case? human |
| simrw | Posted on: 2009/9/16 15:59 |
Webmaster ![]() ![]() Joined: 2005/5/31 From: Bad Soden, Germany Posts: 791 |
Re: Bug in cobc for MSVC: mt.exe is called too often Actually, I think the prob is with MSVC 8. The clue is in the version of the mt tool. That's from an earlier
MSVC version. According to some reports I looked at on the web, MSVC 8 does not have a mt.exe ? What now? Roger |
| human | Posted on: 2009/9/16 17:09 |
Home away from home ![]() ![]() Joined: 2007/5/15 From: GERMANY Posts: 1416 |
Re: Bug in cobc for MSVC: mt.exe is called too often Ska, did you tried to use a precompiled C file (like used in User Manual 2.3, Dynamic C to COBOL)
There is no manifest generated from cl.exe Version 9 (=MSVC 2008) when you have this special case. Is this different with MSVC 8? human BTW: I use MSVC 9 Express (_MSC_VER = 1500), ska seems to use MSVC 8 (_MSC_VER = 1400). Maybe the mt.exe was not shipped with MSVC 8 Express (if it wasn't shipped it could be downloaded with SDK), but is clearly shipped with MSVC 8. What I find interesting is the version of mt.exe. The one of ska and mine seems to be nearly the same. |
| ska | Posted on: 2009/9/16 19:38 |
Just can't stay away ![]() ![]() Joined: 2008/3/17 From: NYC Posts: 145 |
Re: Bug in cobc for MSVC: mt.exe is called too often Quote:
human wrote: Sure I did VS2008: manifest produced - hello-d.exe.manifest
|
| ska | Posted on: 2009/9/16 19:51 |
Just can't stay away ![]() ![]() Joined: 2008/3/17 From: NYC Posts: 145 |
Re: Bug in cobc for MSVC: mt.exe is called too often Quote:
human wrote: I have like 7 or 8 mt.exe, some of different sizes, but most of them report version 5.2.3790.2075 There is no mt.exe inside VS2008 directory tree. But cl from VS2008 generates manifest file. I don't know if its embedding is required for VS2008.
|
| (1) 2 » | |
| Threaded | Newest First | Previous Topic | Next Topic | Top |
| Register To Post | |








