Boost system 1.69.0 not header only?

1k views Asked by At

Boost system is a header only library since 1.69.0. However, linking against libboost_filesystem.so.1.69.0 gives these linker errors:

ld: libboost_system.so.1.69.0, needed by libboost_filesystem.so.1.69.0, not found (try using -rpath or -rpath-link)

which suggest that I still need to link against libboost_system.so, even though it is supposedly header only. Do I need to set some special flags when building Boost itself to get a truly header only system library?

1

There are 1 answers

1
Matthieu Brucher On BEST ANSWER

Boost system is now indeed header-only, but provides a stub for backward compatibility with projects that require such a library.

Boost.System is now header-only. A stub library is still built for compatibility, but linking to it is no longer necessary.

It may be that Boost FileSystem is not yet updated to remove the stub as indicated on line: https://github.com/boostorg/filesystem/blob/develop/build/Jamfile.v2#L29