Boost logo

Boost Users :

Subject: Re: [Boost-users] why aren't I getting multithreaded versions of the libraries that need to be built?
From: Ted Byers (r.ted.byers_at_[hidden])
Date: 2011-08-29 14:34:34


Thanks Steve,

Alas, no joy. I followed your direction, and saw b2 building or revising a
few targets, but the result of make in QuantLib's directory (version 1.1
with boost 1.47.0 ), is:

libtool: link: g++ -g -O2 -o .libs/quantlib-test-suite.exe
quantlibtestsuite.o americanoption.o array.o asianoptions.o assetswap.o
autocovariances.o barrieroption.o basketoption.o batesmodel.o
bermudanswaption.o blackdeltacalculator.o bonds.o brownianbridge.o
calendars.o capfloor.o capflooredcoupon.o cashflows.o cdo.o cdsoption.o
chooseroption.o cliquetoption.o cms.o commodityunitofmeasure.o
compoundoption.o convertiblebonds.o covariance.o creditdefaultswap.o
curvestates.o dates.o daycounters.o defaultprobabilitycurves.o
digitalcoupon.o digitaloption.o distributions.o dividendoption.o
europeanoption.o everestoption.o exchangerate.o extendedtrees.o factorial.o
fastfouriertransform.o fdheston.o fdmlinearop.o forwardoption.o
gaussianquadratures.o gjrgarchmodel.o hestonmodel.o himalayaoption.o
hybridhestonhullwhiteprocess.o inflation.o inflationcapfloor.o
inflationcapflooredcoupon.o inflationvolatility.o instruments.o integrals.o
interestrates.o interpolations.o jumpdiffusion.o libormarketmodel.o
libormarketmodelprocess.o linearleastsquaresregression.o lookbackoptions.o
lowdiscrepancysequences.o margrabeoption.o marketmodel.o marketmodel_cms.o
marketmodel_smm.o marketmodel_smmcapletalphacalibration.o
marketmodel_smmcapletcalibration.o marketmodel_smmcaplethomocalibration.o
matrices.o mclongstaffschwartzengine.o mersennetwister.o money.o
nthtodefault.o operators.o optimizers.o optionletstripper.o
overnightindexedswap.o pagodaoption.o pathgenerator.o period.o
piecewiseyieldcurve.o quantooption.o quotes.o rangeaccrual.o riskstats.o
rngtraits.o rounding.o sampledcurve.o shortratemodels.o solvers.o stats.o
surface.o swap.o swapforwardmappings.o swaption.o swaptionvolatilitycube.o
swaptionvolatilitymatrix.o termstructures.o timeseries.o transformedgrid.o
tqreigendecomposition.o tracing.o utilities.o variancegamma.o
varianceoption.o varianceswaps.o volatilitymodels.o
-lboost_unit_test_framework-mt ./.libs/libUnitMain.a
../ql/.libs/libQuantLib.a /usr/lib/gcc/i686-pc-cygwin/4.3.4/libstdc++.dll.a
-L/usr/lib/gcc/i686-pc-cygwin/4.3.4
./.libs/libUnitMain.a(libUnitMain_la-main.o): In function `main':
/home/Ted/QuantLib-1.1/test-suite/main.cpp:11: undefined reference to
`boost::unit_test::unit_test_main(bool (*)(), int, char**)'
./.libs/libUnitMain.a(libUnitMain_la-main.o): In function
`_Z13init_functionv':
/home/Ted/QuantLib-1.1/test-suite/main.cpp:7: undefined reference to
`boost::unit_test::framework::master_test_suite()'
collect2: ld returned 1 exit status
make[1]: *** [quantlib-test-suite.exe] Error 1
make[1]: Leaving directory `/home/Ted/QuantLib-1.1/test-suite'
make: *** [all-recursive] Error 1

It is looking for a file ' libboost_unit_test_framework-mt.a', which still
does not exist. I assume ' boost::unit_test::framework::master_test_suite'
is in that library. The boost documentation I looked at indicates I ought
to see libraries ending in '-mt' if the library supports multithreading.

What else ought I try?

> -----Original Message-----
> From: boost-users-bounces_at_[hidden] [mailto:boost-users-
> bounces_at_[hidden]] On Behalf Of Steven Watanabe
> Sent: August-29-11 11:42 AM
> To: boost-users_at_[hidden]
> Subject: Re: [Boost-users] why aren't I getting multithreaded versions of
the
> libraries that need to be built?
>
> AMDG
>
> On 08/29/2011 08:12 AM, Ted Byers wrote:
> > This is in cygwin, using gcc.
> >
> > initially I used the following (I don't use python and don't have MPI,
> > but wanted everything else):
> >
> > $ ./bootstrap.sh
> > --with-libraries=chrono,date_time,exception,filesystem,graph,graph_par
> > allel,
> > iostreams,math,program_options,random,regex,serialization,signals,syst
> > em,tes
> > t,thread,wave
> >
> > ./b2 install
> >
> > I then tried building QuantLib, which makes extensive use of boost,
> > including the test framework. But it failed because it tried linking
> > to a multihtreaded build of the test frameqwork.
> >
> > <snip>
> >
>
> You are getting a multithreaded library. The problem is that the name is
not
> what QuantLib apparently expects.
> To get the old naming convention, use --layout=tagged.
>
> In Christ,
> Steven Watanabe


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net