- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Compilation c++ code with IPP legacy headers gives the following errors after updating to Parallel Studio XE 2018 Update 3.
An example code could contain just:
#include <ippi90legacy.h>
Severity Code Description Project File Line Suppression State
Error C2146 syntax error: missing ';' before identifier 'legacy90ippiInit' ipp_legacy_err c:\program files (x86)\intelswtools\compilers_and_libraries_2018.3.210\windows\ipp\include\ippi90legacy.h 58
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int ipp_legacy_err c:\program files (x86)\intelswtools\compilers_and_libraries_2018.3.210\windows\ipp\include\ippi90legacy.h 58
Error C2086 'IppStatus __STDCALL': redefinition ipp_legacy_err c:\program files (x86)\intelswtools\compilers_and_libraries_2018.3.210\windows\ipp\include\ippi90legacy.h 74
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for the report, and we are checking this code.
regards,
Chao
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi. After last Visual Studio 2017 update IPP installing vithout integration vith VS.
Regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am trying to run an empty hello world code (IPP 2018), but it does not compile on VS 2017 or QT Creator.
Code is as follows:
#include "ipps90legacy.h"
Del::Del()
{
ippInit(); // Initialize Intel IPP dispatcher
}
Come up with 152 errors saying things like:
syntax error: missing ';' before identifier 'legacy90ippsInit'
'IppStatus __STDCALL': redefinition
...
Is there any way to run legacy libs with IPP 2018, MSVC 2017 64bit? Or any alternative to compile old code written with earlier versions ( <= IPP 8) with IPP 2018 ? Or where can I find earlier versions of IPP?
Thanks, regards
Cengiz
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am trying to run an empty hello world code (IPP 2018), but it does not compile on VS 2017 or QT Creator.
Code is as follows:
#include "ipps90legacy.h"
Del::Del()
{
ippInit(); // Initialize Intel IPP dispatcher
}
Come up with 152 errors saying things like:
syntax error: missing ';' before identifier 'legacy90ippsInit'
'IppStatus __STDCALL': redefinition
...
Is there any way to run legacy libs with IPP 2018, MSVC 2017 64bit? Or any alternative to compile old code written with earlier versions ( <= IPP 8) with IPP 2018 ? Or where can I find earlier versions of IPP?
Thanks, regards
Cengiz
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Gengiz,
I'm sorry to ignore your question so long time. Yes we changed IPP header files in IPP 2018 release to be compliant with C language standard. This is a simple workaround:
add only 3 lines of code:
#if !defined( __STDCALL ) #define __STDCALL IPP_STDCALL #endif
these lines can be added either before any "legacy" header declaration, or embedded into ippdefs90legacy.h after line #35:
#ifndef __IPPDEFS_90_LEGACY_H__ #define __IPPDEFS_90_LEGACY_H__ #include "ippbase.h" #include "ipptypes.h" #if !defined( __STDCALL ) #define __STDCALL IPP_STDCALL #endif
Pavel
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Pavel Berdnikov (Intel) wrote:Hi Gengiz,
I'm sorry to ignore your question so long time. Yes we changed IPP header files in IPP 2018 release to be compliant with C language standard. This is a simple workaround:
add only 3 lines of code:
#if !defined( __STDCALL ) #define __STDCALL IPP_STDCALL #endifthese lines can be added either before any "legacy" header declaration, or embedded into ippdefs90legacy.h after line #35:
#ifndef __IPPDEFS_90_LEGACY_H__ #define __IPPDEFS_90_LEGACY_H__ #include "ippbase.h" #include "ipptypes.h" #if !defined( __STDCALL ) #define __STDCALL IPP_STDCALL #endifPavel
Confirmed this works. Thanks.
-Mike

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