That was the exact problem.
I could have spent days to find out
this (I am new to C++ and such tricky things weren't in my book)
Thank you for your efficient help !
Internet
raulh39@ya.com
Envoyé par : boost-users-bounces@lists.boost.org
16/01/2008 21:05
Veuillez répondre à
boost-users@lists.boost.org |
|
Pour
| boost-users@lists.boost.org
|
cc
|
|
Objet
| Re: [Boost-users] problems linking boost_date_time |
|
On Tue, 15 Jan 2008 21:47:39 +0100
jerome.wacongne@fxoverlay.com wrote:
> Hi,
>
> Here is what I get when I try to link my unit tests agains
> boost_date_time.
>
> g++ -LC:\dev\workspace\fxoverlayFundation\Debug
> -LC:\dev\workspace\fxoverlayBusiness\Debug -LC:\dev\boost_1_34_1\stage\lib
> -ofxoverlayBusinessTests.exe emptyTests.o allTests.o InterestRateTests.o
> InterestCurveTests.o -lboost_date_time-mgw34-d-1_34_1
> -lboost_unit_test_framework-mgw34-d-1_34_1 -lfxoverlayBusiness
> -lfxoverlayFundation
> C:\dev\workspace\fxoverlayBusiness\Debug/libfxoverlayBusiness.a(InterestCurve.o):
> In function
> `ZSt10_ConstructISt4pairIKSsN3com9fxoverlay8business1
> 2InterestRateEES6_EvPT_RKT0_': ... undefined
> reference to `boost::gregorian::greg_month::as_long_string() const'
>
Libraries should be listed (with the -l option) in "ascending order
of use", that is, if library A uses library B, then library B should
be listed after A.
The error message says that libfxoverlayBusiness.a uses boost::gregorian,
that is, libboost_date_time-mgw34-d-1_34_1.a, so libboost_date_time-mgw34-d-1_34_1.a
should be listed after libfxoverlayBusiness.a, but you have listed it before.
So: try to change the order of the "*.o" and "*.a"
to make the linker happy. ;)
HTH,
Raul.
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
This message and any attachments (the "message") is
intended solely for the addressees and is confidential.
If you receive this message in error, please delete it and
immediately notify the sender. Any use not in accord with
its purpose, any dissemination or disclosure, either whole
or partial, is prohibited except formal approval. The internet
can not guarantee the integrity of this message.
Overlay AM (and its subsidiaries) shall (will) not
therefore be liable for the message if modified.
---------------------------------------------
Ce message et toutes les pieces jointes (ci-apres le
"message") sont etablis a l'intention exclusive de ses
destinataires et sont confidentiels. Si vous recevez ce
message par erreur, merci de le detruire et d'en avertir
immediatement l'expediteur. Toute utilisation de ce
message non conforme a sa destination, toute diffusion
ou toute publication, totale ou partielle, est interdite, sauf
autorisation expresse. L'internet ne permettant pas
d'assurer l'integrite de ce message, Overlay AM (et ses
filiales) decline(nt) toute responsabilite au titre de ce
message, dans l'hypothese ou il aurait ete modifie.