enblend doesn't compile with boost 1.46.1

Bug #756245 reported by Alex Romosan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Enblend
Fix Released
Undecided
Unassigned

Bug Description

looks like basic_patch has been deprecated in boost::filesystem so compiling src/filenameparse.cc fails with:

/home/romosan/cvs/panorama/enblend/src/filenameparse.cc:53:9: error: 'basic_path' in namespace 'boost::filesystem' does not name a type
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc: In function 'bool enblend::isRelativePath(const std::string&)':
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc:63:11: error: 'basic_path' does not name a type
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc:64:13: error: 'path' was not declared in this scope
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc: In function 'std::string enblend::extractDirname(const std::string&)':
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc:83:11: error: 'basic_path' does not name a type
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc:84:33: error: 'path' was not declared in this scope
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc: In function 'std::string enblend::extractBasename(const std::string&)':
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc:97:11: error: 'basic_path' does not name a type
/home/romosan/cvs/panorama/enblend/src/filenameparse.cc:98:12: error: 'path' was not declared in this scope

etc.

Revision history for this message
Alex Romosan (romosan-sycorax) wrote :

with this patch i can compile enblend with boost 1.46.1 (boost filesystem v3)

Revision history for this message
Andreas Metzler (k-launchpad-downhill-at-eu-org) wrote :

Find attached a simple one-line-patch, selecting the V2 interface of boost_filename. This should work up to boost 1.47 and will break with 1.48_:

----------------
http://live.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/index.htm

Version 3 is a major revision with many new and improved features. It may, however, break some user code written for Version 2.

To ease the transition, Boost releases 1.44 through 1.47 will supply both V2 and V3. Version 2 is the default version for Boost release 1.44 and 1.45. Version 3 will be the default starting with release 1.46.--
--------------

Alex, does enblend still build against older boost with your patch?

Revision history for this message
Alex Romosan (romosan-sycorax) wrote : Re: [Bug 756245] Re: enblend doesn't compile with boost 1.46.1

Andreas Metzler <email address hidden> writes:

> Find attached a simple one-line-patch, selecting the V2 interface of
> boost_filename. This should work up to boost 1.47 and will break with
> 1.48_:
>
> ----------------
> http://live.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/index.htm
>
> Version 3 is a major revision with many new and improved features. It
> may, however, break some user code written for Version 2.
>
> To ease the transition, Boost releases 1.44 through 1.47 will supply
> both V2 and V3. Version 2 is the default version for Boost release
> 1.44 and 1.45. Version 3 will be the default starting with release
> 1.46.--
> --------------
>
> Alex, does enblend still build against older boost with your patch?

i haven't tried but you can enable file system version 3 with:

#define BOOST_FILESYSTEM_VERSION 3

at the beginning of src/filenameparse.cc (after #ifdef
HAVE_BOOST_FILESYSTEM) and then you should be able to compile enblend
with older versions (>1.44) of boost as well. sooner or later we'll need
to make the change to filesystem version 3 anyway.

--alex--

--
| I believe the moment is at hand when, by a paranoiac and active |
| advance of the mind, it will be possible (simultaneously with |
| automatism and other passive states) to systematize confusion |
| and thus to help to discredit completely the world of reality. |

Revision history for this message
tmodes (tmodes) wrote :

Commited fix, which should work with BOOST_FILESYSTEM_VERSION 2 and 3.

Changed in enblend:
status: New → Fix Committed
tmodes (tmodes)
Changed in enblend:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.