usnistgov / REFPROP-wrappers

Wrappers around NIST REFPROP for languages such as Python, MATLAB, etc.
193 stars 127 forks source link

Refprop library issue #569

Closed Shyamrakr closed 6 months ago

Shyamrakr commented 11 months ago

I have a c++ program written more than 15 years ago. Unfortunately, the REFPROP.DLL library against which the program was originally linked is old-Refprop7. I won’t be able to use the new version .DLL and .lib as it looks like names of the functions have changed. Any help would be greatly appreciated.

Error-

1>RealFluid.obj : error LNK2019: unresolved external symbol _intsetup_ referenced in function "public: virtual void __thiscall ZAPP::CRealFluid::setUp(void)" (?setUp@CRealFluid@ZAPP@@UAEXXZ)
1>RealFluid.obj : error LNK2019: unresolved external symbol _name_ referenced in function "public: virtual void __thiscall ZAPP::CRealFluid::getCompName(int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > *)" (?getCompName@CRealFluid@ZAPP@@UAEXHPAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00@Z)
1>RealFluid.obj : error LNK2019: unresolved external symbol _info_ referenced in function "public: virtual void __thiscall ZAPP::CRealFluid::getCompInfo(int,double *,double *,double *,double *,double *,double *,double *,double *,double *,double *)" (?getCompInfo@CRealFluid@ZAPP@@UAEXHPAN000000000@Z)
1>RealFluid.obj : error LNK2019: unresolved external symbol _wmol_ referenced in function "public: virtual double __thiscall ZAPP::CRealFluid::getMolWt(double * const)" (?getMolWt@CRealFluid@ZAPP@@UAENQAN@Z)
1>RealFluid.obj : error LNK2019: unresolved external symbol _xmass_ referenced in function "public: void __thiscall ZAPP::CRealFluid::xMolToMassFrac(double * const,double * const,double &)" (?xMolToMassFrac@CRealFluid@ZAPP@@QAEXQAN0AAN@Z)
ianhbell commented 11 months ago

You will probably need to rewrite your code to match the new API. I don't see any reference to the public API of REFPROP 7, which is what the code should have been targeting back then.