- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I used the latest version of Intel C++ Compiler 11.0.072, and the several Linker Errors that i got with version 10 are not seen anymore. Yipeee!!! But I am still getitng the following Linker Errors, even though this solution compiles fine with MS C++ Compiler,
xilink: executing 'link'
BuildManager.def : error LNK2001: unresolved external symbol DllCanUnloadNow
BuildManager.def : error LNK2001: unresolved external symbol DllGetClassObject
BuildManager.def : error LNK2001: unresolved external symbol DllRegisterServer
BuildManager.def : error LNK2001: unresolved external symbol DllUnregisterServer
Why are these errors coming? Am i missing something here?
Regards,
Komal Dutta
I used the latest version of Intel C++ Compiler 11.0.072, and the several Linker Errors that i got with version 10 are not seen anymore. Yipeee!!! But I am still getitng the following Linker Errors, even though this solution compiles fine with MS C++ Compiler,
xilink: executing 'link'
BuildManager.def : error LNK2001: unresolved external symbol DllCanUnloadNow
BuildManager.def : error LNK2001: unresolved external symbol DllGetClassObject
BuildManager.def : error LNK2001: unresolved external symbol DllRegisterServer
BuildManager.def : error LNK2001: unresolved external symbol DllUnregisterServer
Why are these errors coming? Am i missing something here?
Regards,
Komal Dutta
Link Copied
7 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - komal_dutta
BuildManager.def : error LNK2001: unresolved external symbol DllCanUnloadNow
If all is ok, add following in front of the function:
__declspec( dllexport )
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Jennifer,
I already have "__declspec(dllexport)" added in the function definition. I have the following in my cpp file:
STDAPI DllCanUnloadNow(void)
where STDAPI defined as extern "C" HRESULT __stdcall in winnt.h.
Regards,
Komal
I already have "__declspec(dllexport)" added in the function definition. I have the following in my cpp file:
STDAPI DllCanUnloadNow(void)
where STDAPI defined as extern "C" HRESULT __stdcall in winnt.h.
Regards,
Komal
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I have found the reason why I was getting these errors.
The projects where I got these errors were "ATL Project" DLLs with "Allow merging of proxy/stub code" Enabled (during creation of the projects).
The vcproj files of these projects contains the setting:
WholeProgramOptimization="1"
When this is removed from the vcproj file, the project compiles fine with Intel C++ Compiler, without any errors.
Thanks & Regards,
Komal Dutta
P.S.: I have observed an issue with Intel C++ Compiler. When I make some change to the vcproj file and build it with Intel C++ Compiler, it gives errors. When I close and open the project, and build again; IT BUILDS FINE! Any clue why this is so?
I have found the reason why I was getting these errors.
The projects where I got these errors were "ATL Project" DLLs with "Allow merging of proxy/stub code" Enabled (during creation of the projects).
The vcproj files of these projects contains the setting:
WholeProgramOptimization="1"
When this is removed from the vcproj file, the project compiles fine with Intel C++ Compiler, without any errors.
Thanks & Regards,
Komal Dutta
P.S.: I have observed an issue with Intel C++ Compiler. When I make some change to the vcproj file and build it with Intel C++ Compiler, it gives errors. When I close and open the project, and build again; IT BUILDS FINE! Any clue why this is so?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
But the Whole Program Optimization could bring some performance for you.
Those functions are defined by MSVC, so function declarations can not be changed.
I'll create feature request to see if those functions can be handled differently.
Thanks,
Jennifer
Those functions are defined by MSVC, so function declarations can not be changed.
I'll create feature request to see if those functions can be handled differently.
Thanks,
Jennifer
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Jennfer,
Performance is the key reason why we used Intel C++ Compiler.
Please update this forum if you find a way to keep "Whole Program Optimization" on, while building ATL projects.
Thanks & Regards,
Komal Dutta
Performance is the key reason why we used Intel C++ Compiler.
Please update this forum if you find a way to keep "Whole Program Optimization" on, while building ATL projects.
Thanks & Regards,
Komal Dutta
Quoting - Jennifer Jiang (Intel)
But the Whole Program Optimization could bring some performance for you.
Those functions are defined by MSVC, so function declarations can not be changed.
I'll create feature request to see if those functions can be handled differently.
Thanks,
Jennifer
Those functions are defined by MSVC, so function declarations can not be changed.
I'll create feature request to see if those functions can be handled differently.
Thanks,
Jennifer
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello all,
Good news.
This issue is fixed in our 1st 11.1 update and as well as the Intel Parallel Composer 1st update. Good news.
To ensure you're using the 1st update, please log on to Intel Registration & Download center - https://registrationcenter.intel.com/RegCenter/Register.aspx
You may also get the latest version by going to our eval page - http://software.intel.com/en-us/intel-compilers/ (click Evaluate).
Thank you !
Jennifer
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
I have same problem with my code error LNK2001: unresolved external symbol DllCanUnloadNow
But i found solution
In the same project properties dialogbox, click on c/c++ go to Preprocessor. Then go to preprocessor definitions edit box. add last line REGISTER_PROXY_DLL
Press OK
Work it..
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page