This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- FlexNet Publisher
- :
- FlexNet Publisher Knowledge Base
- :
- Error LNK2001
Subscribe
- Mark as New
- Mark as Read
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Error LNK2001
Error LNK2001
Error LNK2001 can be seen during multiple occasions ,one of them is stated below
lmgr_trl.lib(cmn_vm_FakeVMDetection.obj) : error LNK2019: ссылка на неразрешенный внешний символ fclose в функции tb2QUQ4AsjyG4 lmgr_trl.lib(l_lfgets.obj) : error LNK2001: неразрешенный внешний символ "fclose" lmgr_trl.lib(flex_file.obj) : error LNK2001: неразрешенный внешний символ "fclose" lmgr_trl.lib(fnp_errorlogger.obj) : error LNK2001: неразрешенный внешний символ "fclose" lmgr_trl.lib(l_read_lfile.obj) : error LNK2001: неразрешенный внешний символ "fclose" lmnewgen.obj : error LNK2001: неразрешенный внешний символ "fclose"
These errors can be encountered while building the FNP Kit and running the nmake -f makefile command.
Reason
The Visual Studio in question is installed in a language different from English (Russian) whereas a part of the code in the makefile checks for the Visual Studio Version.
The string returned by the VS is in Russian whereas the makefile is expecting it to be in English and hence these errors are encountered since it starts using older libraries leading to failure
Resolution
1.Search the makefile for the below code
!if ([cl 2>&1 | findstr /C:"Version 19"> nul] == 0)
COMPILER = 19.00
!endif
2.Comment out the If statement in the code.
#!if ([cl 2>&1 | findstr /C:"Version 19"> nul] == 0)
COMPILER = 19.00
#!endif
Commenting the if statement around the compiler version forces the makefile to use the newer libraries.
Note: Only perform this workaround if you are using Visual Studio 2017 or higher
Labels (8)
No ratings