- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
I'm staic linking and recived the following warning using VS2008
warning LNK4248: unresolved typeref token (01000015) for 'MomentState64f'; image may not run
Any ideas? The code does seem to run as well as the moment commands.
THANKS
warning LNK4248: unresolved typeref token (01000015) for 'MomentState64f'; image may not run
Any ideas? The code does seem to run as well as the moment commands.
THANKS
1 Solution
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi!
Probably not. I've created the simple example according your text:
#include "ipp.h"
int main()
{
IppiMomentState_64f* pState;
IppStatus m_Status;
Ipp64f pValue;
const Ipp8u* pSrc;
const char* m_StatusString;
IppiSize Small;
IppiPoint pointROI = {1,1};
int ROIoffset;
Small.width = 1;
Small.height = 1;
m_Status = ippiMomentInitAlloc_64f( &pState, ippAlgHintNone );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiMoments64f_8u_C1R(pSrc, 1, Small, pState );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 1, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 1, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetCentralMoment_64f(pState,2,0,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,0,2,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,1,1,0,&pValue);
ippiMomentFree_64f(pState);
}
and no problem:
C:Work>cl -Ic:SVNippinclude ipptest.c ippiemerged.lib ippimerged.lib ippseme
rged.lib ippsmerged.lib ippcorel.lib
Microsoft 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
ipptest.c
c:workipptest.c(17) : warning C4700: uninitialized local variable 'pSrc' used
Microsoft Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.
/out:ipptest.exe
ipptest.obj
ippiemerged.lib
ippimerged.lib
ippsemerged.lib
ippsmerged.lib
ippcorel.lib
C:Work>
Probably not. I've created the simple example according your text:
#include "ipp.h"
int main()
{
IppiMomentState_64f* pState;
IppStatus m_Status;
Ipp64f pValue;
const Ipp8u* pSrc;
const char* m_StatusString;
IppiSize Small;
IppiPoint pointROI = {1,1};
int ROIoffset;
Small.width = 1;
Small.height = 1;
m_Status = ippiMomentInitAlloc_64f( &pState, ippAlgHintNone );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiMoments64f_8u_C1R(pSrc, 1, Small, pState );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 1, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 1, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetCentralMoment_64f(pState,2,0,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,0,2,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,1,1,0,&pValue);
ippiMomentFree_64f(pState);
}
and no problem:
C:Work>cl -Ic:SVNippinclude ipptest.c ippiemerged.lib ippimerged.lib ippseme
rged.lib ippsmerged.lib ippcorel.lib
Microsoft 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
ipptest.c
c:workipptest.c(17) : warning C4700: uninitialized local variable 'pSrc' used
Microsoft Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.
/out:ipptest.exe
ipptest.obj
ippiemerged.lib
ippimerged.lib
ippsemerged.lib
ippsmerged.lib
ippcorel.lib
C:Work>
Pavel
Lien copié
6 Réponses
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
It seems you missed some of IPPlibrary in link options. Please check you link with ippcore library
Regards,
Vladimir
Regards,
Vladimir
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi Vladmir,
I do have ippcore linked in and still get that warning.
THANKS
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
I never seen that problem with IPP. Might be something is wrong in project settings? And by the way, what version of IPP do you use?
Vladimir
Vladimir
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi dwindield!
This error mean that you try to use struct MomentState64f directly not by IPP functions. It isn't corret, you have to use IPP functions only!
From Microsoft MSDN:
The following sample generates LNK4248. Define struct A to resolve.
Copy Code
// LNK4248.cpp
// compile with: /clr /W1
// LNK4248 expected
struct A;
void Test(A*){}
int main() {
Test(0);
}
This error mean that you try to use struct MomentState64f directly not by IPP functions. It isn't corret, you have to use IPP functions only!
From Microsoft MSDN:
The following sample generates LNK4248. Define struct A to resolve.
Copy Code
// LNK4248.cpp
// compile with: /clr /W1
// LNK4248 expected
struct A;
void Test(A*){}
int main() {
Test(0);
}
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Quoting - Pavel Berdnikov
Hi dwindield!
This error mean that you try to use struct MomentState64f directly not by IPP functions. It isn't corret, you have to use IPP functions only!
From Microsoft MSDN:
The following sample generates LNK4248. Define struct A to resolve.
Copy Code
// LNK4248.cpp
// compile with: /clr /W1
// LNK4248 expected
struct A;
void Test(A*){}
int main() {
Test(0);
}
This error mean that you try to use struct MomentState64f directly not by IPP functions. It isn't corret, you have to use IPP functions only!
From Microsoft MSDN:
The following sample generates LNK4248. Define struct A to resolve.
Copy Code
// LNK4248.cpp
// compile with: /clr /W1
// LNK4248 expected
struct A;
void Test(A*){}
int main() {
Test(0);
}
This is interesting --> I'm using the later version of IPP. Here's the only part where I use the structure"
IppiMomentState_64f* pState;
IppiSize Small;
IppiPoint pointROI = {0,0};
int ROIoffset;
Small.width = m_sc_Blobs.m_Info.rect.width;
Small.height = m_sc_Blobs.m_Info.rect.height;
ROIoffset = m_sc_width*( m_sc_Blobs.m_Info.rect.y) + ( m_sc_Blobs.m_Info.rect.x);
m_Status = ippiMomentInitAlloc_64f( &pState, ippAlgHintNone );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiMoments64f_8u_C1R(m_sc_AnalyzedImage+ROIoffset, m_sc_width, Small, pState );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 0, 0, pointROI, &m_sc_Blobs.m_mom0 );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 1, 0, 0, pointROI, &m_sc_Blobs.m_momx );
m_StatusString = ippGetStatusString( m_Status );
m_sc_Blobs.m_cgx = m_sc_Blobs.m_momx / m_sc_Blobs.m_mom0;
m_sc_Blobs.m_cgx += (m_sc_Blobs.m_Info.rect.x);
m_Status = ippiGetSpatialMoment_64f( pState, 0, 1, 0, pointROI, &m_sc_Blobs.m_momy );
m_StatusString = ippGetStatusString( m_Status );
m_sc_Blobs.m_cgy = m_sc_Blobs.m_momy / m_sc_Blobs.m_mom0;
m_sc_Blobs.m_cgy += (m_sc_Blobs.m_Info.rect.y);
m_Status = ippiGetCentralMoment_64f(pState,2,0,0,&m_sc_Blobs.m_moix);
m_Status = ippiGetCentralMoment_64f(pState,0,2,0,&m_sc_Blobs.m_moiy);
m_Status = ippiGetCentralMoment_64f(pState,1,1,0,&m_sc_Blobs.m_moixy);
ippiMomentFree_64f(pState);
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi!
Probably not. I've created the simple example according your text:
#include "ipp.h"
int main()
{
IppiMomentState_64f* pState;
IppStatus m_Status;
Ipp64f pValue;
const Ipp8u* pSrc;
const char* m_StatusString;
IppiSize Small;
IppiPoint pointROI = {1,1};
int ROIoffset;
Small.width = 1;
Small.height = 1;
m_Status = ippiMomentInitAlloc_64f( &pState, ippAlgHintNone );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiMoments64f_8u_C1R(pSrc, 1, Small, pState );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 1, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 1, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetCentralMoment_64f(pState,2,0,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,0,2,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,1,1,0,&pValue);
ippiMomentFree_64f(pState);
}
and no problem:
C:Work>cl -Ic:SVNippinclude ipptest.c ippiemerged.lib ippimerged.lib ippseme
rged.lib ippsmerged.lib ippcorel.lib
Microsoft 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
ipptest.c
c:workipptest.c(17) : warning C4700: uninitialized local variable 'pSrc' used
Microsoft Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.
/out:ipptest.exe
ipptest.obj
ippiemerged.lib
ippimerged.lib
ippsemerged.lib
ippsmerged.lib
ippcorel.lib
C:Work>
Probably not. I've created the simple example according your text:
#include "ipp.h"
int main()
{
IppiMomentState_64f* pState;
IppStatus m_Status;
Ipp64f pValue;
const Ipp8u* pSrc;
const char* m_StatusString;
IppiSize Small;
IppiPoint pointROI = {1,1};
int ROIoffset;
Small.width = 1;
Small.height = 1;
m_Status = ippiMomentInitAlloc_64f( &pState, ippAlgHintNone );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiMoments64f_8u_C1R(pSrc, 1, Small, pState );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 1, 0, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetSpatialMoment_64f( pState, 0, 1, 0, pointROI, &pValue );
m_StatusString = ippGetStatusString( m_Status );
m_Status = ippiGetCentralMoment_64f(pState,2,0,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,0,2,0,&pValue);
m_Status = ippiGetCentralMoment_64f(pState,1,1,0,&pValue);
ippiMomentFree_64f(pState);
}
and no problem:
C:Work>cl -Ic:SVNippinclude ipptest.c ippiemerged.lib ippimerged.lib ippseme
rged.lib ippsmerged.lib ippcorel.lib
Microsoft 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
ipptest.c
c:workipptest.c(17) : warning C4700: uninitialized local variable 'pSrc' used
Microsoft Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.
/out:ipptest.exe
ipptest.obj
ippiemerged.lib
ippimerged.lib
ippsemerged.lib
ippsmerged.lib
ippcorel.lib
C:Work>
Pavel

Répondre
Options du sujet
- S'abonner au fil RSS
- Marquer le sujet comme nouveau
- Marquer le sujet comme lu
- Placer ce Sujet en tête de liste pour l'utilisateur actuel
- Marquer
- S'abonner
- Page imprimable