views:

53

answers:

2

Hi there,

So I am wanting to use boost signals in my C++ program.

I add:

#include <boost/signal.hpp>

But I get this error when I build.

fatal error LNK1104: cannot open file 'libboost_signals-vc90-mt-gd-1_42.lib'

The lib file is not contained within my boost directory.

Typing 'libboost_signal' (with variations) into google hasn't helped.

Anyone encountered this problem before? Any help is greatly appreciated.

A: 

You need to add the boost/stage directory to your linker path in Project Settings. That's where all the boost libraries are. This assumes that you've done the boostrapping/building, of course...

Clark Gaebel
I should have mentioned that I have done that.The problem is that the lib doesn't seem to be included with this boost release. There are plenty of libboost_xyz and boost_xyz. No libboost_signals.Why would it even ask for a lib that doesn't seem to exist.
John
+3  A: 

most of Boost is header-file-only source, so you just need to #include <boost/whatever.hpp> and your done. However, there's a few sections that require a dll - examples are date/time, regex and signals.

So yuo need to build the signals dll. instructions are on the boost website and are easy - so easy I've forgotten how I did it last time. (check out section 5.2 on the site).

gbjbaanb
Brilliant, I'll check that out now. Thanks.
John
Problem sorted. I assumed it was already built. Thanks again.
John
+1 for pointing out that boost isn't header-only.