Boost logo

Boost-Build :

From: Mark Coletti (mcoletti_at_[hidden])
Date: 2002-11-13 18:26:17


I am having a problem whereby a <lib> dependency doesn't appear to be
getting recognized.

- This is for a W2K box, and I'm using the cygwin bash shell

- Boost is installed in /cygwin/usr/local/include/boost_1_29_0

- BOOST_BUILD_PATH set to /cygwin/usr/local/include/boost_1_29_0/tools/build

- contents of root Jamfile:

project-root ;
subinclude featurelib ;
subinclude tests ;
subinclude extra/SimpleCSV ;

- contents of featurelib/Jamfile:

subproject featurelib ;

LIBTAI_HEADERS = c:/cygwin/usr/local/include/ ;
BOOST_HEADERS = c:/cygwin/usr/local/include/boost_1_29_0 ;
OGR_HEADERS = c:/cygwin/usr/local/include/ ;

lib featurespace : Attribute.cpp
AttributeSet.cpp
AttributeVisitor.cpp
Feature.cpp
FeatureSpace.cpp
Point.cpp
Relationship.cpp
SpatialReference.cpp
Typed.cpp
: <include>$(LIBTAI_HEADERS)
<include>$(BOOST_HEADERS)
<include>$(OGR_HEADERS)
<include>/../featurelib
<include>.
<runtime-link>static
<debug-symbols>on
<debug-store>object
<rtti>on
<exception-handling>on
<shared-linkable>false
"<msvc><*><cxxflags>-Yd"
"<msvc><*><cxxflags>-Z7"
: debug
;

- contents of extra/SimpleCSV/Jamfile:

subproject extra/SimpleCSV ;

LIBTAI_HEADERS = c:/cygwin/usr/local/include/ ;
LIBTAI_LIBPATH = c:/cygwin/usr/local/lib/ ;
BOOST_HEADERS = c:/cygwin/usr/local/include/boost_1_29_0 ;
OGR_HEADERS = c:/cygwin/usr/local/include/ ;
OGR_LIBPATH = c:/cygwin/usr/local/lib/ ;

lib simplecsv : simple_csv.cpp
: <include>$(LIBTAI_HEADERS)
<include>$(BOOST_HEADERS)
<include>$(OGR_HEADERS)
<include>../../featurelib
<include>.
<runtime-link>static
<debug-symbols>on
<debug-store>object
<rtti>on
<exception-handling>on
<shared-linkable>false
"<msvc><*><cxxflags>-Yd"
"<msvc><*><cxxflags>-Z7"
: debug
;

exe simple_csv_t : <lib>simplecsv
<lib>../../featurelib/featurespace
simple_csv_t.cpp
: <sysinclude>$(LIBTAI_HEADERS)
<sysinclude>$(BOOST_HEADERS)
<sysinclude>$(OGR_HEADERS)
<library-path>$(LIBTAI_LIBPATH)
<library-path>$(OGR_LIBPATH)
<find-library>cpl.lib
<find-library>ogr.lib
<find-library>libtai.lib
<find-library>proj.lib
<find-library>boost_regex_vc6_sssd.lib
<include>../../featurelib
: debug
<runtime-link>static
<runtime-build>debug
<debug-symbols>on
<debug-store>object
<exception-handling>on
<rtti>on
;

- output generated from "bjam -sTOOLS=msvc" after simplecsv library
successfully built:

"link" /nologo /DEBUG /subsystem:console /out:"..\..\extra\SimpleCSV\bin
\simple_csv_t.exe\msvc\debug\runtime-link-static\simple_csv_t.exe" /LIBPATH:"c
:\cygwin\usr\local\lib" /LIBPATH:"C:\Program Files\Microsoft Visual Studio\VC98
\lib" "cpl.lib" "ogr.lib" "libtai.lib" "proj.lib" "boost_regex_vc6_sssd.lib" @
"..\..\extra\SimpleCSV\bin\simple_csv_t.exe\msvc\debug\runtime-link-static\simpl
e_csv_t.CMD"

Please observe that, even though I've explicitly added the
featurespace library dependency, there is no mention of that
library in the linker command line; naturally this causes linker
errors.

What am I doing wrong? The test harnasses I have in the "tests"
directory correctly link against the "featurespace" library using
the same "<lib>../../featurelib/featurespace". (Well, one less
'../' since that directory is one closer to the project root.)

Cheers!

Mark

-- 
Mark Coletti | mailto:mcoletti_at_[hidden] | http://www.lychnobite.org/
"Stop quoting me, you blubbering twit!" -- Confucius
 

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk