Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] linker error in cgal example

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] linker error in cgal example


Chronological Thread 
  • From: tina rumi <>
  • To:
  • Subject: Re: [cgal-discuss] linker error in cgal example
  • Date: Thu, 10 Dec 2009 13:46:47 -0500
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=WCGFbebU5RY59hfVD9MiyGc2oz7IL11b3VtL69TAQCpIQBnnHrOYxOJXcrRDpRx+aD x/6LTkG22LhMvdhWWbeQEVeDeWSETxC7WVgAEAumCENADk2zSUDhkY3ppoKR075onI4n rkVHJo2k4t9Izw2E3royXqH/TleO2Sx3H45cc=

Hi Pierre,

Thanks for the prompt reply. I made new project with the MFC DLL and chose the " " but I still have same errors.  I couldn't find "MT DLL code generation" where can I find it. BTW I am using Visual Studio 9 and windows 64.

Thank you,
Tina


On Thu, Dec 10, 2009 at 1:20 PM, Pierre Alliez <> wrote:
hi Tina,

actually - I am having the same problem with GMP and visual.

choose the option: MFC in a shared lib and MT DLL code generation - not static.
Pierre Alliez
INRIA Sophia Antipolis - Mediterranee 
Project-team GEOMETRICA 
http://www-sop.inria.fr/members/Pierre.Alliez/
Tel: +33 4 92 38 76 77
Fax: +33 4 97 15 53 95


tina rumi a écrit :
Hi Laurent,

Thank you for your reply. I tried with the cmake too but still same errors. I even addressed all the lib files in my code individually and still have same error. I am guessing the problem is not finding library. maybe I am missing some of  the lib file.  I have following files :

"C:\CGAL\CGAL-3.5\auxiliary\gmp\lib" :
gmp-vc90-mt.lib
gmp-vc90-mt-gd.lib
gmp-vc90-mt-s.lib
gmp-vc90-mt-sgd.lib
mpfr-vc90-mt.lib
mpfr-vc90-mt-gd.lib
mpfr-vc90-mt-s.lib
mpfr-vc90-mt-sgd.lib

gmp-vc90-mt.dll
gmp-vc90-mt-gd.dll
mpfr-vc90-mt.dll
mpfr-vc90-mt-gd.dll

and in "C:\CGAL\CGAL-3.5\auxiliary\gmp\include" :
gmp.h
mpfr.h

Is there any file missing? I really appreciate your help, I don't know what else should I do.

Thank you,
Tina



On Thu, Dec 10, 2009 at 4:48 AM, Laurent Saboret <> wrote:
Hi Tina,

How did you compile poisson_reconstruction_example?
The recommended way is to run CMake that will find third party libraries like GMP and generate a VC++ project. Then you can compile as usually with VC++. See "Configuring and Building Programs Using Cgal" http://www.cgal.org/Manual/last/doc_html/installation_manual/Chapter_installation_manual.html#Section_7

Regards,

Laurent Saboret


tina rumi wrote:
Thanks Laurent, how should I do that? I guess that should be problem but when I checked my c++ directory , it was already in lib and include file,  it is also in the windows environment "path" too. is there somewhere else that I need to check.

Thanks,
Tina

2009/12/9 Laurent Saboret <>
Looks like you need to link with GMP library.

Laurent Saboret



tina rumi wrote:
Hey guys,

when I try to run this cgal example:
examples/Surface_reconstruction_points_3/poisson_reconstruction_example.cpp


  

I get following linker error:

1>Linking...
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_clear referenced in function "public: __thiscall CGAL::Gmpq_rep::~Gmpq_rep(void)" (??1Gmpq_rep@CGAL@@QAE@XZ)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_set_d referenced in function "public: __thiscall CGAL::Gmpq::Gmpq(double)" (??0Gmpq@CGAL@@QAE@N@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_init referenced in function "public: __thiscall CGAL::Gmpq_rep::Gmpq_rep(void)" (??0Gmpq_rep@CGAL@@QAE@XZ)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_mul referenced in function "public: class CGAL::Gmpq & __thiscall CGAL::Gmpq::operator*=(class CGAL::Gmpq const &)" (??XGmpq@CGAL@@QAEAAV01@ABV01@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_cmp_si referenced in function "bool __cdecl CGAL::operator==(class CGAL::Gmpq const &,int)" (??8CGAL@@YA_NABVGmpq@0@H@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp__mpfr_clear referenced in function "public: struct std::pair<double,double> __thiscall CGAL::Real_embeddable_traits<class CGAL::Gmpq>::To_interval::operator()(class CGAL::Gmpq const &)const " (??RTo_interval@?$Real_embeddable_traits@VGmpq@CGAL@@@CGAL@@QBE?AU?$pair@NN@std@@ABVGmpq@2@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp__mpfr_get_d referenced in function "public: struct std::pair<double,double> __thiscall CGAL::Real_embeddable_traits<class CGAL::Gmpq>::To_interval::operator()(class CGAL::Gmpq const &)const " (??RTo_interval@?$Real_embeddable_traits@VGmpq@CGAL@@@CGAL@@QBE?AU?$pair@NN@std@@ABVGmpq@2@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp__mpfr_set_q referenced in function "public: struct std::pair<double,double> __thiscall CGAL::Real_embeddable_traits<class CGAL::Gmpq>::To_interval::operator()(class CGAL::Gmpq const &)const " (??RTo_interval@?$Real_embeddable_traits@VGmpq@CGAL@@@CGAL@@QBE?AU?$pair@NN@std@@ABVGmpq@2@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp__mpfr_init2 referenced in function "public: struct std::pair<double,double> __thiscall CGAL::Real_embeddable_traits<class CGAL::Gmpq>::To_interval::operator()(class CGAL::Gmpq const &)const " (??RTo_interval@?$Real_embeddable_traits@VGmpq@CGAL@@@CGAL@@QBE?AU?$pair@NN@std@@ABVGmpq@2@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_add referenced in function "public: class CGAL::Gmpq & __thiscall CGAL::Gmpq::operator+=(class CGAL::Gmpq const &)" (??YGmpq@CGAL@@QAEAAV01@ABV01@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_sub referenced in function "public: class CGAL::Gmpq & __thiscall CGAL::Gmpq::operator-=(class CGAL::Gmpq const &)" (??ZGmpq@CGAL@@QAEAAV01@ABV01@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_set_si referenced in function "public: __thiscall CGAL::Gmpq::Gmpq(int)" (??0Gmpq@CGAL@@QAE@H@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_div referenced in function "public: class CGAL::Gmpq & __thiscall CGAL::Gmpq::operator/=(class CGAL::Gmpq const &)" (??_0Gmpq@CGAL@@QAEAAV01@ABV01@@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_cmp referenced in function "bool __cdecl CGAL::operator<(class CGAL::Gmpq const &,class CGAL::Gmpq const &)" (??MCGAL@@YA_NABVGmpq@0@0@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_equal referenced in function "bool __cdecl CGAL::operator==(class CGAL::Gmpq const &,class CGAL::Gmpq const &)" (??8CGAL@@YA_NABVGmpq@0@0@Z)
1>cloud_points.obj : error LNK2019: unresolved external symbol __imp____gmpq_set referenced in function ___gmpq_neg
1>F:\fingerprint\codes\cloud_points\Debug\cloud_points.exe : fatal error LNK1120: 16 unresolved externals


do you have any suggestion to fix this. I appreciate your help.

Thanks,
Tina

Ce courrier électronique et toutes les pièces éventuellement jointes qu’il contient sont CONFIDENTIELS et destinés exclusivement à l’usage de leur destinataire. Si une erreur de transmission ou une adresse erronée a mal dirigée ce courrier, merci d’en informer l’expéditeur en lui faisant une réponse par courrier électronique dès réception. Si vous n’êtes pas le destinataire de ce courrier, vous ne devez pas l’utiliser, le conserver, en faire état, le distribuer, le copier, l’imprimer ou en révéler le contenu à une tierce partie.
Ce courrier électronique est à usage strictement informatif et ne saurait engager de quelque manière que ce soit INFOTERRA France SAS, ni ses filiales.

This e-mail and any attachments hereto are CONFIDENTIAL and intended solely for the use of the addressee. If you have received this e-mail in error please send it back to the person that sent it to you.
If you have received it in error, please notify the sender by return email. If you are not the addressee of this email, you must not use, keep, disseminate, copy, print or otherwise deal with it.
This email is for information only and will not bind INFOTERRA France SAS in any contract or obligation, nor its subsidiaries.
    





Archive powered by MHonArc 2.6.16.

Top of Page