
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Link error
Below is the link error we are getting in Visual Cobol that we did not get in our Net Express 3.1.
What steps do I need to take to resolve this error ? Is this a missing parameter or modules that has been replaced
by other modules ?
Thank you for your help.
D:\vcprod>CBLLINK gropvp.cbl
Micro Focus COBOL - CBLLINK utility
Version 2.1.0.35 Copyright (C) Micro Focus 1984-2012. All rights reserved.
Micro Focus COBOL
Version 2.1.00024 Copyright (C) Micro Focus 1984-2012. All rights reserved.
* Ignored - LINKCOUNT"200"
* Rejected - MAP
* Checking complete with no errors - starting code generation
* Ignored - ()
* Ignored - TARGET "PENTIUM"
* Generating gropvp
* Data: 9944 Code: 35264 Literals: 12128
Microsoft (R) Incremental Linker Version 11.00.50727.1
Copyright (C) Microsoft Corporation. All rights reserved.
gropvp.obj
cbllds00000DB4.obj
Creating library gropvp.lib and object gropvp.exp
gropvp.obj : error LNK2001: unresolved external symbol _PACK_DECIMAL
gropvp.obj : error LNK2001: unresolved external symbol _UNPACK_DECIMAL
gropvp.exe : fatal error LNK1120: 2 unresolved externals

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
I am not familiar with those symbol name. I do not believe that they are Micro Focus symbols.
Do you have any call statements in your programs that directly reference these routine names?
Thanks.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Any chanced of getting a copy of the program to peek at? If there are lots of copybooks use the compiler directive RAWLIST and attach the llisting

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
This is the code piece that was originally ported from a Unisys mainframe.
I am currently seeking management approval to send the full program.
MOVE 0 TO DECODE-MODE.
** Translate the hex ASCII to characters.
PERFORM TRAN-HEX-TO-CHAR
VARYING TSUB FROM 1 BY 1
UNTIL TSUB > LENGTH OF VPN-CRCR-TEXT.
CALL "__PACK_DECIMAL" USING WS-CRCR-TEXT CRCR-INTEGER
BY VALUE LENGTH OF CRCR-INTEGER.
CALL "__UNPACK_DECIMAL" USING ERROR-FLAG-PAD-DIGIT
WS-ERROR-PAD BY VALUE 1.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
This clearly shows that you are calling these entry points from within your program and it is not part of the COBOL run-time.
Were you linking in additional COBOL modules under NX 3.1 that you are now omitting?
Do you know in which module these routines actually reside?
Are you using the LITLINK or LITLINK"2" directive at compile time?
What does your cbllink statement look like under NX 3.1?