Menu

Instructions: how to compile with Boost 1.46

Help
Panther
2011-08-25
2013-04-23
  • Panther

    Panther - 2011-08-25

    Sorry, I am too lazy to make official patches right now but as I just updated from boost 1.42 to boost 1.46 I though I'd share a quick fix how to get Gizmod to compile again.

    libGizmod/Processes.cpp:

    157c157
    <       string StatPath = iter->path().string() + "/stat";
    ---
    >       string StatPath = iter->string() + "/stat";
    

    gizmod/Main.cpp:

    55a56,57
    >   // set filesystem to native filesystem checking
    >   path::default_name_check(native);
    

    gizmod/GizmoDaemon.cpp:

    1109c1109
    <           ret += "sys.path.insert(0, \"" + iter->path().string() + "\")\n";
    ---
    >           ret += "sys.path.insert(0, \"" + iter->string() + "\")\n";
    1567c1567
    <           UserScripts.push_back(iter->path().filename().string());
    ---
    >           UserScripts.push_back(iter->path().leaf());
    2192c2192
    <           if (iter->path().filename().string().find("event") != 0)
    ---
    >           if (iter->path().leaf().find("event") != 0)
    2194c2194
    <           eventsFiles.push_back(mEventsDir + "/" + iter->path().filename().string());
    ---
    >           eventsFiles.push_back(mEventsDir + "/" + iter->path().leaf());
    

    I hope these help someone!

     
  • Ben S.

    Ben S. - 2011-10-26

    Thanks for this.

    gizmod has been removed from the Ubuntu package repositories starting with 11.10 because it no longer compiles with the latest Boost libraries, so I had to figure out how to build it myself.

    I found that in addition to the above changes, I also needed to modify the 3 makefiles generated by cmake to add -lboost_system to the library lists passed to the linker.

    I haven't tested my build yet, but it built without errors so it should be okay.

     
  • Ben S.

    Ben S. - 2011-10-31

    Update: After running 'sudo make install', I also had to run 'sudo ldconfig' in order for gizmod to be able to find its .so libraries. It's now working fine for me under Xubuntu 11.10 x64.

     
  • Markus Roeckelein

    I also tried to compile Gizmod with boost 1.46 (Xubuntu 12.04 beta x64). I made the above code changes, and I also added the line #include <stdlib.h> in some files to get rid of the compile errors concerning "size_t". Of course, I had the same linker problem as benshadwick. Because I did not find the appropriate positions in the 3 makefiles where I could add -lboost_system, I finally added this linker option to the file link.txt in subdirectory gizmod/CMakeFiles/gizmod.dir.

    Now Gizmod is running under Precise Pangolin. And in contrast to benshadwick, I did not need to run "sudo ldconfig".

     

Log in to post a comment.