I\'m new to Eclipse-CDT, setting up a new project for the first time. I\'m trying to reference Boost without hardcoding an absolute path.
I\'ve put boost in
IIRC, you should be able to right click the project and go into the C/C++ general settings. From there you can add specific include directories for the project to reference. Here's a couple of links that may help...
IBM Article
Eclipse Development
I am using Eclipse Luna and found the accepted answer to be no longer accurate. After a bit of head scratching, it seems that a couple of changes have happened in the past few years (at least, this is what happened on my system):
-I
or other relevant switchFor this to work, therefore, I had to enter ${ProjDirPath}/../whatever
as a non workspace-relative path, and the variable is not expanded until compile time.
I got this working doing roughly what Michael Burr suggested above:
Under Project Properties/C/C++ General/Paths and Symbols, I added paths like this:
${ProjDirPath}/../boost_1_39_0
When adding an include file path in the CDT project (Project Properties/C/C++ General/Paths and Symbols), there are 3 buttons to browse for a location:
If you press the Workspace... button, the path will be relative to the workspace/project. If you select the Variables... button, you'll get to incorporate variables such as ${WorkspaceDirPath}
. The variables can also reference environment variables, which might be handy if you want a single install of boost to be referenced from projects that might reside anywhere on your machine.
If you incorporate variables into the path, make sure the "Is a workspace path" option is checked - otherwise the variable seems to get evaluated when you press "OK" instead of staying a variable to be evaluated at build time.