Thread: Building boost

  1. #1
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446

    Building boost

    I'm trying to install the boost libraries for mingw. I'm running bjam like so:

    Code:
    bjam -sTOOLS=mingw --prefix=c:\MinGW\Boost --without-python install
    The installation main folder is located in C:\MinGW\Boost_1_33_1\
    This is also from where I am running bjam.

    The environment variables for the MinGW toolset have been set as requested:

    Code:
    MINGW_BIN_DIRECTORY=C:\MinGW\bin\
    MINGW_INCLUDE_DIRECTORY=C:\MinGW\include\
    MINGW_ROOT_DIRECTORY=C:\MinGW\
    MINGW_STDLIB_DIRECTORY=C:\MinGW\lib\
    However, I get the following error on all calls to g++ (here an example)

    Code:
    ...failed gcc-C++-action bin\boost\libs\regex\build\boost_regex.dll\mingw\release\winstances.obj...
    gcc-C++-action bin\boost\libs\regex\build\boost_regex.dll\mingw\release\usinstances.obj
    g++: no input files
    What am I doing wrong?
    Last edited by Mario F.; 06-24-2006 at 10:07 PM.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  2. #2
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,613
    I'm sure that this page will help you.
    http://boost.org/tools/build/v1/mingw-tools.html
    While it doesn't appear to make a real difference, I would do it like that and in that order.

  3. #3
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Those are the environment vars I need to setup. I had followed that step before using bjam.

    I've downloaded the boost_1_33_1.exe file from sourceforge and installed it to "C:\MinGW\Boost_1_33_1\". Then downloaded the bjam executable and set those environment variables.

    When I run bjam, I get that error on every call to g++.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  4. #4
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    This is one example of what bjam is requesting from g++:

    "C:\MinGW\bin\g++" -c -Wall -ftemplate-depth-255 -DNDEBUG -DNDEBUG -DBOOST_ALL_DYN_LINK=1 -DUSE_DATE_TIME_PRE_1_33_FACET_
    IO -O3 -finline-functions -Wno-inline -mthreads -mno-cygwin -I"bin\boost\libs\date_time\build" -I "C:\MinGW\include\" -I "C:\b
    oost_1_33_1" -o "bin\boost\libs\date_time\build\boost_date_time.dl l\mingw\release\threading-multi\greg_month.obj" "C:\boost_1_3
    3_1\libs\date_time\build\../src/gregorian/greg_month.cpp"
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  5. #5
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Perhaps MingW can't handle the mix of forward and back slashes in the input file? You could try that out on the command line.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  6. #6
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    It was a good tip. But unfortunately just tested it. It allows that mixture.

    That -mno-cygwin command line option is worrying me some. And I can't find any reference to it in the GCC manual. But from other -mno types found in the manual it seems to be disabling compilation for cywgin. Which is just fine.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  7. #7
    int x = *((int *) NULL); Cactus_Hugger's Avatar
    Join Date
    Jul 2003
    Location
    Banks of the River Styx
    Posts
    902
    Quote Originally Posted by Mario F.
    "C:\boost_1_3
    3_1\libs\date_time\build\../src/gregorian/greg_month.cpp"
    Is that correct, and does that file exist? You said previously that: "The installation main folder is located in C:\MinGW\Boost_1_33_1\"...

    Disclaimer: Never touched Boost. (Thought about it.)
    long time; /* know C? */
    Unprecedented performance: Nothing ever ran this slow before.
    Any sufficiently advanced bug is indistinguishable from a feature.
    Real Programmers confuse Halloween and Christmas, because dec 25 == oct 31.
    The best way to accelerate an IBM is at 9.8 m/s/s.
    recursion (re - cur' - zhun) n. 1. (see recursion)

  8. #8
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Yes. It is correct. I re-unpacked later on with the zip distribution to test it (maybe the exe distribution was broken). At that attempt, I done it to that location.

    EDIT: I'm taking this to the boost mailing list as soon as the webpage where I can subscribe stops exhibiting a bug. If it was not for the excellent review of the community at general, at this point I would think Boost is poorly implemented.
    Last edited by Mario F.; 06-26-2006 at 04:28 AM.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  9. #9
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    To close on this issue (in case anyone is wondering or does a search on the forums in the future) the solution to the problem was just found.

    The environment variables should have been declared with forward slashes. It's building correctly now.

    My thank you to ChaosEngine and Leo Domery
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. boost building troubles
    By Darkinyuasha1 in forum C++ Programming
    Replies: 8
    Last Post: 07-01-2008, 09:50 PM
  2. Boost Auto-Linking
    By Tonto in forum C++ Programming
    Replies: 5
    Last Post: 12-30-2007, 06:11 AM
  3. building boost libraries
    By l2u in forum C++ Programming
    Replies: 3
    Last Post: 05-09-2007, 08:34 AM
  4. building boost iostreams
    By l2u in forum C++ Programming
    Replies: 3
    Last Post: 04-14-2007, 02:29 PM
  5. Integrating Boost with STLPort
    By Mario F. in forum Tech Board
    Replies: 1
    Last Post: 11-11-2006, 06:49 AM