Opened 6 years ago

#12318 new Tasks

Problem using Boost 1.61.0 with VTK Marching Cubes

Reported by: psmit057@… Owned by:
Milestone: To Be Determined Component: Building Boost
Version: Boost 1.61.0 Severity: Problem
Keywords: header, #include Cc:

Description

Hello,

I seem to be having a problem using Boost 1.61.0 in conjunction with VTK 7.0.0. My purpose for using Boost is to obtain the filenames of all PNG files in any given folder using the following code:

#define BOOST_FILESYSTEM_VERSION 3
#define BOOST_FILESYSTEM_NO_DEPRECATED
#include "boost/filesystem.hpp"

namespace fs = ::boost::filesystem;

// return the filenames of all files that have the specified extension
// in the specified directory and all subdirectories
void get_all(const fs::path& root, const string& ext, vector<fs::path>& ret)
{
    if(!fs::exists(root) || !fs::is_directory(root)) return;

    fs::recursive_directory_iterator it(root);
    fs::recursive_directory_iterator endit;

    while(it != endit)
    {
        if(fs::is_regular_file(*it) && it->path().extension() == ext) ret.push_back(it->path().filename());
        ++it;
    }
}

This code is used as part of the CXX file, which is built with an appropriate CMakeLists file using CMake 3.5.1 to produce a corresponding .xcodeproj file.

However, the main problem that I'm facing is that attempting to build the project using an ALL_BUILD scheme in Xcode 7.0.1 leads to a series of errors pointing to the #include statements of the header files in the Boost folder (which is located in the same folder as the CXX and CMakeLists files).

For instance, it starts off saying that "'boost/filesystem/config.hpp' file not found" in response to the following line of boost/filesystem.hpp:

#  include <boost/filesystem/config.hpp>

Such errors could be resolved if I were to modify the syntax of the #include statements to follow a different format:

#  include "./filesystem/config.hpp"

i.e., replacing the <> with "" and using relative paths to find the other required header files.

However, going in to modify every single header file is a sort of tedium that I find it difficult to handle, and therefore I was hoping for a simpler solution to this problem.

By the way, I am on a Mac, and my operating system is El Capitan version 10.11.5.

Thank you in advance.

Change History (0)

Note: See TracTickets for help on using tickets.