www.digitalmars.com         C & C++   DMDScript  

c++ - Need help converting .LIB

I have hit a roadblock with my trusty DMC++ and I am hoping someone out there
can help me.
I need to link to a .LIB to implement a simple class that uses std::strings and
::vectors.
I tried to convert the LIB to a DMC compatible format but without success.
Please take a look and share suggestions.

Here is a snip of the header file from the vendor.
---------------------
#include <string>
#include <vector>
void SetDynamicLink (void);

class  Galil
{
public:
   Galil(std::string address = "");
   ~Galil();
   static std::vector<std::string> addresses();
};
----------------------------

When I run the .LIB through coffimplib I get a .LIB and .DEF file
coffimplib galil1.lib galil1_dmc.lib -l -v > galil1_dmc.lib.txt
coffimplib galil1.lib galil1_dmc.def -e -v > galil1_dmc.def.txt

My .DEF file says.... ---------------- LIBRARY galil1_dmc EXETYPE NT SUBSYSTEM WINDOWS EXPORTS ??0Galil QAE V?$basic_string DU?$char_traits D std V?$allocator D 2 std Z ??1Galil QAE XZ ??4Galil QAEAAV0 ABV0 Z ??_FGalil QAEXXZ ?SetDynamicLink YAXXZ ?addresses Galil SA?AV?$vector V?$basic_string DU?$char_traits D std V?$allocator D 2 std V? $allocator V?$basic_string DU?$char_traits D std V?$allocator D 2 std 2 std XZ -------------- And when I compile the code... ------------ #include "Galil.H" void foo() { Galil GalilCtrl(""); }; ------------ The linker tells me... Error 42: Symbol Undefined ??0Galil QAE V?$basic_string std DV?$char_traits std D 1 V? $allocator std D 1 std (syscall Galil::Galil(basic_string<>::d::DV?$char_traits::std::D::basic_string<> ,allocator<>::d::D::basic_string<> )) Thanks in advance! AndyC
Apr 20 2012