开发者

How should I compile boost library in a small project?

I have a small project where I need just part of boost library, boost::regex in particular. This is what I've done so far:

/include
  /boost
    /regex
    /math
    .. 189 dirs, files, etc.
/lib
  /boost-regex
    c_regex_traits.cpp
    cpp_regex_traits.cpp
    .. ~20 .cpp files
myprog.cpp

In my Makefile I compile all boost-regex .cpp files one by one, producing .obj开发者_开发百科 files. Next, I'm building my project by means of compiling myprog.cpp together with all that .obj files from /lib/boost/regex.

The question is whether I'm doing everything correct? The size of my output file is rather big (~3.5Mb), while my code is extremely small (10 lines).

ps. My compiler:

$ c++ —version
i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5659)


Why not build regex library as a static lib and use it's features in your code by writing #include <boost/regex.hpp>?

This shouldn't affect the final size of your application, because compiler will take only those functions that are actually used in your app.

Also, precompiled boost libraries for different platforms can be found in the internet if you don't want to build them yourself. In that case what you have to do is just take the appropriate library and include the appropriate header.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜