[Ipopt] Test Example

Stefan Vigerske stefan at math.hu-berlin.de
Fri Sep 24 07:09:04 EDT 2010


Hi,

can it be that you try to use a release-build of the Ipopt libraries in
a debug-build of your application? This can lead to linking problems
like you see.

Stefan

loerx schrieb:
> Hi,
> 
> sorry I do not know whether it is appropriate to post my question
> through the mailing list, or not. I am just a beginner using ipopt.
> 
> I followed the instruction and compiled ipopt on my windows machine
> using Visual Studio 2005. Everything works fine! Also the test example
> works. Now I want to create my own vs project with the test example
> shown in the introduction manual and add the dependencies
> 
> libipopt.lib libcoinblas.lib libcoinhsl.lib libcoinlapack.lib
> 
> By the way, I could find the ipopt_addlibs_cpp.txt file mentioned in the
> documentation. Compiling my project the following errors occured:
> 
> 1>------ Erstellen gestartet: Projekt: Testproject, Konfiguration: Debug
> Win32 ------
> 1>Kompilieren...
> 1>hs071_nlp.cpp
> 1>t:\c++\ipopt\testproject\testproject\hs071_nlp.cpp(9) : warning C4651:
> '/D_DLL' für vorkompilierte Headerdatei, aber nicht für aktuelle
> Kompilierung angegeben
> 1>Testproject.cpp
> 1>t:\c++\ipopt\testproject\testproject\testproject.cpp(27) : warning
> C4651: '/D_DLL' für vorkompilierte Headerdatei, aber nicht für aktuelle
> Kompilierung angegeben
> 1>Code wird generiert...
> 1>Verknüpfen...
> 1>msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: __thiscall
> std::basic_string<char,struct std::char_traits<char>,class
> std::allocator<char> >::~basic_string<char,struct
> std::char_traits<char>,class std::allocator<char> >(void)"
> (??1?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QAE at XZ)
> ist bereits in libipopt.lib(IpIpoptApplication.obj) definiert.
> 1>msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: __thiscall
> std::basic_string<char,struct std::char_traits<char>,class
> std::allocator<char> >::basic_string<char,struct
> std::char_traits<char>,class std::allocator<char> >(char const *)"
> (??0?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QAE at PBD@Z)
> ist bereits in libipopt.lib(IpIpoptApplication.obj) definiert.
> 1>libcpmtd.lib(ios.obj) : error LNK2005: "private: static void __cdecl
> std::ios_base::_Ios_base_dtor(class std::ios_base *)"
> (?_Ios_base_dtor at ios_base@std@@CAXPAV12@@Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(ios.obj) : error LNK2005: "public: static void __cdecl
> std::ios_base::_Addstd(class std::ios_base *)"
> (?_Addstd at ios_base@std@@SAXPAV12@@Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(locale0.obj) : error LNK2005: "private: static class
> std::locale::_Locimp * __cdecl std::locale::_Getgloballocale(void)"
> (?_Getgloballocale at locale@std@@CAPAV_Locimp at 12@XZ) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(locale0.obj) : error LNK2005: "private: static class
> std::locale::_Locimp * __cdecl std::locale::_Init(void)"
> (?_Init at locale@std@@CAPAV_Locimp at 12@XZ) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(locale0.obj) : error LNK2005: "private: static void
> __cdecl std::locale::facet::facet_Register(class std::locale::facet *)"
> (?facet_Register at facet@locale at std@@CAXPAV123@@Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(locale0.obj) : error LNK2005: "public: static void
> __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,char const
> *)" (?_Locinfo_ctor at _Locinfo@std@@SAXPAV12 at PBD@Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(locale0.obj) : error LNK2005: "public: static void
> __cdecl std::_Locinfo::_Locinfo_dtor(class std::_Locinfo *)"
> (?_Locinfo_dtor at _Locinfo@std@@SAXPAV12@@Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(xdebug.obj) : error LNK2005: "void * __cdecl operator
> new(unsigned int,struct std::_DebugHeapTag_t const &,char *,int)"
> (??2 at YAPAXIABU_DebugHeapTag_t@std@@PADH at Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(xdebug.obj) : error LNK2005: "void * __cdecl operator
> new[](unsigned int,struct std::_DebugHeapTag_t const &,char *,int)"
> (??_U at YAPAXIABU_DebugHeapTag_t@std@@PADH at Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(xdebug.obj) : error LNK2005: "struct std::_DebugHeapTag_t
> const & __cdecl std::_DebugHeapTag_func(void)"
> (?_DebugHeapTag_func at std@@YAABU_DebugHeapTag_t at 1@XZ) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(xlock.obj) : error LNK2005: "public: __thiscall
> std::_Lockit::_Lockit(int)" (??0_Lockit at std@@QAE at H@Z) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>libcpmtd.lib(xlock.obj) : error LNK2005: "public: __thiscall
> std::_Lockit::~_Lockit(void)" (??1_Lockit at std@@QAE at XZ) ist bereits in
> msvcprtd.lib(MSVCP80D.dll) definiert.
> 1>LINK : warning LNK4098: Standardbibliothek "LIBCMT" steht in Konflikt
> mit anderen Bibliotheken; /NODEFAULTLIB:Bibliothek verwenden.
> 1>hs071_nlp.obj : warning LNK4217: Lokal definiertes Symbol "__wassert"
> wurde in "public: virtual bool __thiscall
> HS071_NLP::get_bounds_info(int,double *,double *,int,double *,double *)"
> (?get_bounds_info at HS071_NLP@@UAE_NHPAN0H00 at Z)-Funktion importiert.
> 1>hs071_nlp.obj : warning LNK4217: Lokal definiertes Symbol "_printf"
> wurde in "public: virtual void __thiscall
> HS071_NLP::finalize_solution(enum Ipopt::SolverReturn,int,double const
> *,double const *,double const *,int,double const *,double const
> *,double,class Ipopt::IpoptData const *,class
> Ipopt::IpoptCalculatedQuantities *)"
> (?finalize_solution at HS071_NLP@@UAEXW4SolverReturn at Ipopt@@HPBN11H11NPBVIpoptData at 3@PAVIpoptCalculatedQuantities at 3@@Z)-Funktion
> importiert.
> 1>Testproject.obj : warning LNK4049: Lokal definiertes Symbol "_printf"
> wurde importiert.
> 1>T:\C++\Ipopt\Testproject\Debug\Testproject.exe : fatal error LNK1169:
> Mindestens ein mehrfach definiertes Symbol gefunden.
> 1>Das Buildprotokoll wurde unter
> "file://t:\C++\Ipopt\Testproject\Testproject\Debug\BuildLog.htm"
> gespeichert.
> 1>Testproject - 15 Fehler, 6 Warnung(en)
> ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0
> übersprungen ==========
> 
> Any help, would be nice!!!
> 
> Thanks!!
> 
> Best regards,
> Andre
> 
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt



More information about the Ipopt mailing list