- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have installed Composer XE 2015 (version 2015.6.285) on a new computer and have a rather interesting problem. The code that I am trying to build compiles OK on another computer. I know that the version of Composer is old, but it is building some legacy code.
This new computer has Visual Studio 2010 SP1 installed and this is being used to build a DLL that include IPP. The stdafx.h file that is included as a header file includes the following two lines.
#include <ipp.h> #include <ippm.h>
When the code is compiled, the following error is reported for the first file that includes stdafx.h.
LINK : fatal error LNK1104: cannot open file 'C:\Program Files (x86)\Intel\Composer XE 2015\ipp\include\ippm.h/../../lib/intel64/ippmmt.lib'
What I can see is that ippm.h includes the following code. Note that it is the third line that is causing the problem.
#if !defined( _IPP_NO_DEFAULT_LIB ) #if defined( _IPP_SEQUENTIAL_DYNAMIC ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "ippm" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "ippcore" ) #elif defined( _IPP_SEQUENTIAL_STATIC ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "ippmmt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "ippimt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "ippsmt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "ippvmmt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "ippcoremt" ) #elif defined( _IPP_PARALLEL_DYNAMIC ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "threaded/ippm" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "threaded/ippcore" ) #elif defined( _IPP_PARALLEL_STATIC ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "threaded/ippmmt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "threaded/ippimt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "threaded/ippsmt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "threaded/ippvmmt" ) #pragma comment( lib, __FILE__ "/../../lib/" _INTEL_PLATFORM "threaded/ippcoremt" ) #endif #endif
The project's properties have $(IPPIncludeDir) in the include directories path. I can see that ippm.h is located in C:\Program Files (x86)\Intel\Composer XE 2015\ipp\include and ippm.lib is in C:\Program Files (x86)\Intel\Composer XE 2015\ipp\lib\intel64. I cannot see how this code can work as the library is relative located to the include file by \..\lib\intel64\ rather than \..\..\lib\
What I do not understand is that the same code and project are used on the computer that builds it correctly and the one that does not. They both have had Composer XE 2015 installed. Can anyone shed light on what needs to be done to get this to build correctly?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Niall Q,
You mentioned that the same code and project are used on the different computers, one builds the project correctly, while the other one does not. And both the computers installed Composer XE 2015 (version 2015.6.285). And said the new computer has Visual Studio 2010 SP1 installed and this is being used to build a DLL that include IPP.
So, what' the version that old computer installed? VS 20##? Except the composer XE2015 and code is same, what's the difference for the two computers?
Have you checked all the configuration one by one in the VS to make the two projects are totally same? And have you tested other project which integrated IPP in the new computer?
Best Regards,
Ruqiu

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page