Hi Andrew

Let's prioritise general build issues and bugs over Windows build.

If there are, for instance, issues building on Linux with different Boost version, then that's a serious issue that needs to be sorted out now.

Had a chat on IRC #maria yesterday and I really think we need to merge very soon.

Regards,
Arjen.


On 09/08/13 08:30, Andrew McDonnell wrote:
One fix I did need to make as well:

cmakelists need -DJUWIN for Judy

On 08/08/13 22:29, Andrew McDonnell wrote:
Made some closer inspections, took a while to untangle the templates and 
warnings

<extract>
// --> MSVC2008 fails inside here
             dijkstra_shortest_paths_no_init(share->g, *orig,
                 make_lazy_property_map(p, identity_initializer<Vertex>()),
                 make_lazy_property_map(d, value_initializer<EdgeWeight>(
                     (std::numeric_limits<EdgeWeight>::max)())),
                 get(edge_weight, share->g),
                 get(vertex_index, share->g),
                 std::less<EdgeWeight>(),
                 closed_plus<EdgeWeight>(),
                 EdgeWeight(),
                 make_dijkstra_visitor(
                     make_oqgraph_goal<true, on_finish_vertex>(
                         *dest,
                         boost::make_assoc_property_map(p),
                         static_cast<stack_cursor*>(cursor)
                     )
                 ),
                 make_two_bit_judy_map(get(vertex_index, share->g)));     <--
possibly here

I got similar bit subtly different errors using MSVC2010 in 64-bit on Win7
Note this required installing the 7.1 SDK (and uninstalling the previously
present MSVC2010 redsitriutable!)

On MSVC2010/64 instead I was seeing unable to match and of the 12 overloads
for get(...)


In both cases though seems to hinge on being unable to resolve a property map
of weights to edges (or something)...

The above statement is a bit vague, I know.... more concretely, I noted the
following differences between Boost 1.54 (MSVC2008, fails) and 1.42 on debian
squeeze:

inside djisktra_shortest_paths() :

boost 1_54

       void examine_edge(Edge e, Graph& g) {
         // Comparison needs to be more complicated because distance and weight
         // types may not be the same; see bug 8398
         // (https://svn.boost.org/trac/boost/ticket/8398)
         D source_dist = get(m_distance, source(e, g));
         if (m_compare(m_combine(source_dist, get(m_weight, e)), source_dist))
             boost::throw_exception(negative_edge());
         m_vis.examine_edge(e, g);
       }

boost 1_42
             template <class Edge, class Graph>
       void examine_edge(Edge e, Graph& g) {
         if (m_compare(get(m_weight, e), m_zero))
             boost::throw_exception(negative_edge());
         m_


I am currently rebuilding with boost 1.42 to see if that succeeds on MSVC2008...


this will be a slow process, because I find myself reverse engineering how it
all hangs together and having to write chains to find out what a type
ultimately resolves to and untangle all the 'legendary' template compiler
messages, being currently unfamiliar with this end of the code

Ultimately I may end up having to write some test harnesses that narrow things
down (and speed up the build process!)




On 08/08/13 02:06, Antony T Curtis wrote:
Boost should be reasonably well supported on Windows but BGL is very
challenging for compilers. Iirc from MSVC++, sometimes required hinting for it
to derive the correct type templates. Gcc will literally try every possible
combination as required by C++ spec but MS compiler does not in order to get
faster compile times.

On Aug 7, 2013 6:22 AM, "Andrew McDonnell" <b...@andrewmcdonnell.net
<mailto:b...@andrewmcdonnell.net>> wrote:

     Hiya,

     64-bit on Windows 7 + MS7.1SDK fails with same error as XP+32bit+MSVC8

     I'm wondering if boost_1_54 is the culprit, using some lately added C++
     standard stuff unsupported by MS

     Next move is to try boost_1_42 (same as squeeze) and see if that works

     Othwrwise time to start debugging...

     On 06/08/13 08:10, Arjen Lentz wrote:
     > Hi Andrew
     >
     > Ok what steps still need to be done before we can submit this for
     merging into
     > MariaDB 10.0 ?
     > tnx
     >
     >
     > Cheers,
     > Arjen.


     --
     Mailing list: https://launchpad.net/~oqgraph-dev
     Post to     : oqgraph-dev@lists.launchpad.net
     <mailto:oqgraph-dev@lists.launchpad.net>
     Unsubscribe : https://launchpad.net/~oqgraph-dev
     More help   : https://help.launchpad.net/ListHelp







--
Arjen Lentz, Exec.Director @ Open Query (http://openquery.com)
Australian peace of mind for your MySQL/MariaDB infrastructure.

Follow us at http://openquery.com/blog/ & http://twitter.com/openquery

--
Mailing list: https://launchpad.net/~oqgraph-dev
Post to     : oqgraph-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~oqgraph-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to