How to built boost?

classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

How to built boost?

Slav
Hello. I cannnot build the boost library. Part of it which are not
require .cpp file ("lexical_cast") works well and I use it already.
But "serialization" part usage failed ("1>LINK : fatal error LNK1104:
cannot open file 'libboost_serialization-vc100-mt-gd-1_45.lib'");
I did:
       - downloaded bjam.exe

       - downloaded boost-build and unzipped it to C:\boost-build

       - downloaded boost_1_45_0 and unzipped it to C:\boost_1_45_0

       - issued commands like "bjam.exe --toolset=msvc
--prefix=C:\boost_1_45_0 --build-type=complete
--build-dir="C:\boost_build" --stagedir=C:\boost_build stage"
                          result after 5 seconds lag:

C:/boost_1_45_0/tools/build/v2/build\configure.jam:145: in builds-raw
                                    *** argument error
                                    * rule UPDATE_NOW ( targets * :
log ? : ignore-minus-n ? )
                                    * called with: (
<pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-10.0\debug\
                                    threading-multi>has_icu.exe
<pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-

10.0\debug\threading-multi>has_icu.pdb :  : ignore-minus-n :
ignore-minus-q )
                                    * extra argument ignore-minus-q
                                    (builtin):see definition of rule
'UPDATE_NOW' being called

C:/boost_1_45_0/tools/build/v2/build\configure.jam:179: in
configure.builds

C:/boost_1_45_0/tools/build/v2/build\configure.jam:216: in
object(check-target-b
                                    uilds-worker)@409.check
                                    ...............

C:/boost_1_45_0/tools/build/v2/build\targets.jam:848: in
targets.generate-from-r
                                    eference

C:/boost_1_45_0/tools/build/v2/build\targets.jam:1217: in
generate-dependencies

C:/boost_1_45_0/tools/build/v2/build\targets.jam:1268: in
alias-target-class.gen
                                    erate
                                    Jamroot:648: in build-multiple

Result: I don't have any .lib files.
What did I wrong?
I don't understand why I cannot just download already built .lib files
from somewhere? What's the point in building boost on Windows? I
already spent 4 hours on it. Can you give just link to already built
files like other libraries does? (SDL, OpenGL, OpenAL, threads, OSG,
Ogre3D... and tons of other libs...). It's pretty annoying.
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

Vladimir Prus
On Sunday, November 21, 2010 14:57:41 Вячеслав Блинников wrote:

> Hello. I cannnot build the boost library. Part of it which are not
> require .cpp file ("lexical_cast") works well and I use it already.
> But "serialization" part usage failed ("1>LINK : fatal error LNK1104:
> cannot open file 'libboost_serialization-vc100-mt-gd-1_45.lib'");
> I did:
>        - downloaded bjam.exe
>
>        - downloaded boost-build and unzipped it to C:\boost-build
>
>        - downloaded boost_1_45_0 and unzipped it to C:\boost_1_45_0
>
>        - issued commands like "bjam.exe --toolset=msvc
> --prefix=C:\boost_1_45_0 --build-type=complete
> --build-dir="C:\boost_build" --stagedir=C:\boost_build stage"
>                           result after 5 seconds lag:
>
> C:/boost_1_45_0/tools/build/v2/build\configure.jam:145: in builds-raw
>                                     *** argument error
>                                     * rule UPDATE_NOW ( targets * :
> log ? : ignore-minus-n ? )
>                                     * called with: (
> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-10.0\debug\
>                                     threading-multi>has_icu.exe
> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-
>
> 10.0\debug\threading-multi>has_icu.pdb :  : ignore-minus-n :
> ignore-minus-q )
>                                     * extra argument ignore-minus-q
>                                     (builtin):see definition of rule
> 'UPDATE_NOW' being called
>
> C:/boost_1_45_0/tools/build/v2/build\configure.jam:179: in
> configure.builds
>
> C:/boost_1_45_0/tools/build/v2/build\configure.jam:216: in
> object(check-target-b
>                                     uilds-worker)@409.check
>                                     ...............
>
> C:/boost_1_45_0/tools/build/v2/build\targets.jam:848: in
> targets.generate-from-r
>                                     eference
>
> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1217: in
> generate-dependencies
>
> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1268: in
> alias-target-class.gen
>                                     erate
>                                     Jamroot:648: in build-multiple
>
> Result: I don't have any .lib files.
> What did I wrong?

Well, you have not read the documentation on building ;-)
You only have to:

1. Unpack boost
2. Run ".\bootstrap.bat"
3. Run ".\bjam.exe", optionally adding your --prefix and --build-dir and
--build-type options.

- Volodya

--
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build: http://boost.org/boost-build2
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

Slav
It's so much of documentation there just for building (bjam.exe,
boost-build, BoostRegex, boost itself, ohh...), I think it's even more
of it then documentation for boost using itself :).
At the end I found out the http://www.boostpro.com/download/ and
settled up everything just by one click - I think it will be very good
to put this link on the boost site because it's pointless to build
libraries for Windows. (never mind).

2010/11/22 Vladimir Prus <[hidden email]>:

> On Sunday, November 21, 2010 14:57:41 Вячеслав Блинников wrote:
>> Hello. I cannnot build the boost library. Part of it which are not
>> require .cpp file ("lexical_cast") works well and I use it already.
>> But "serialization" part usage failed ("1>LINK : fatal error LNK1104:
>> cannot open file 'libboost_serialization-vc100-mt-gd-1_45.lib'");
>> I did:
>>        - downloaded bjam.exe
>>
>>        - downloaded boost-build and unzipped it to C:\boost-build
>>
>>        - downloaded boost_1_45_0 and unzipped it to C:\boost_1_45_0
>>
>>        - issued commands like "bjam.exe --toolset=msvc
>> --prefix=C:\boost_1_45_0 --build-type=complete
>> --build-dir="C:\boost_build" --stagedir=C:\boost_build stage"
>>                           result after 5 seconds lag:
>>
>> C:/boost_1_45_0/tools/build/v2/build\configure.jam:145: in builds-raw
>>                                     *** argument error
>>                                     * rule UPDATE_NOW ( targets * :
>> log ? : ignore-minus-n ? )
>>                                     * called with: (
>> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-10.0\debug\
>>                                     threading-multi>has_icu.exe
>> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-
>>
>> 10.0\debug\threading-multi>has_icu.pdb :  : ignore-minus-n :
>> ignore-minus-q )
>>                                     * extra argument ignore-minus-q
>>                                     (builtin):see definition of rule
>> 'UPDATE_NOW' being called
>>
>> C:/boost_1_45_0/tools/build/v2/build\configure.jam:179: in
>> configure.builds
>>
>> C:/boost_1_45_0/tools/build/v2/build\configure.jam:216: in
>> object(check-target-b
>>                                     uilds-worker)@409.check
>>                                     ...............
>>
>> C:/boost_1_45_0/tools/build/v2/build\targets.jam:848: in
>> targets.generate-from-r
>>                                     eference
>>
>> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1217: in
>> generate-dependencies
>>
>> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1268: in
>> alias-target-class.gen
>>                                     erate
>>                                     Jamroot:648: in build-multiple
>>
>> Result: I don't have any .lib files.
>> What did I wrong?
>
> Well, you have not read the documentation on building ;-)
> You only have to:
>
> 1. Unpack boost
> 2. Run ".\bootstrap.bat"
> 3. Run ".\bjam.exe", optionally adding your --prefix and --build-dir and
> --build-type options.
>
> - Volodya
>
> --
> Vladimir Prus
> http://vladimir_prus.blogspot.com
> Boost.Build: http://boost.org/boost-build2
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

gilam.roth
In reply to this post by Vladimir Prus
Hello,

I read the documentation, I use Solaris and follow step by step the docs.
Boost is not being build, bjam does not work even on the boost example.
Trying to use unit test module with other previously build libs and make file, will generate errors about std.
Maybe because it insist on having cpp.
Yes, I did setenv to boost_dir and boost_root and change the linker option to sun.
No one is answering my question about this on the forum, and I revel I'm not the first and only one having this troubles.
Also it seems that the boost library is meant to serve first and most likely Microsoft users. That's a real disappointment.
It seems to me that more effort could be made on a clear documentation, now it is vogue and lot left to the user imagination when coming to configuration. Yes, I know simply do 3 steps simply run the sh, alas, it is so simple that it don't work.
The situation seem to be gloom and doom. A very big disappointment, and pity. It seems that lots of good people contribute to this wonderful framework but it seem to work only on Microsoft and maybe Linux, what a waste.

If anybody think he can help me I will be glad to use boost, otherwise it seems that on Solaris I'll had to use Ulib or something like this.

-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Vladimir Prus
Sent: Monday, November 22, 2010 9:11 AM
To: Boost.Build developer's and user's list
Subject: Re: [Boost-build] How to built boost?

On Sunday, November 21, 2010 14:57:41 Вячеслав Блинников wrote:

> Hello. I cannnot build the boost library. Part of it which are not
> require .cpp file ("lexical_cast") works well and I use it already.
> But "serialization" part usage failed ("1>LINK : fatal error LNK1104:
> cannot open file 'libboost_serialization-vc100-mt-gd-1_45.lib'");
> I did:
>        - downloaded bjam.exe
>
>        - downloaded boost-build and unzipped it to C:\boost-build
>
>        - downloaded boost_1_45_0 and unzipped it to C:\boost_1_45_0
>
>        - issued commands like "bjam.exe --toolset=msvc
> --prefix=C:\boost_1_45_0 --build-type=complete
> --build-dir="C:\boost_build" --stagedir=C:\boost_build stage"
>                           result after 5 seconds lag:
>
> C:/boost_1_45_0/tools/build/v2/build\configure.jam:145: in builds-raw
>                                     *** argument error
>                                     * rule UPDATE_NOW ( targets * :
> log ? : ignore-minus-n ? )
>                                     * called with: (
> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-10.0\debug\
>                                     threading-multi>has_icu.exe
> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-
>
> 10.0\debug\threading-multi>has_icu.pdb :  : ignore-minus-n :
> ignore-minus-q )
>                                     * extra argument ignore-minus-q
>                                     (builtin):see definition of rule
> 'UPDATE_NOW' being called
>
> C:/boost_1_45_0/tools/build/v2/build\configure.jam:179: in
> configure.builds
>
> C:/boost_1_45_0/tools/build/v2/build\configure.jam:216: in
> object(check-target-b
>                                     uilds-worker)@409.check
>                                     ...............
>
> C:/boost_1_45_0/tools/build/v2/build\targets.jam:848: in
> targets.generate-from-r
>                                     eference
>
> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1217: in
> generate-dependencies
>
> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1268: in
> alias-target-class.gen
>                                     erate
>                                     Jamroot:648: in build-multiple
>
> Result: I don't have any .lib files.
> What did I wrong?

Well, you have not read the documentation on building ;-)
You only have to:

1. Unpack boost
2. Run ".\bootstrap.bat"
3. Run ".\bjam.exe", optionally adding your --prefix and --build-dir and
--build-type options.

- Volodya

--
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build: http://boost.org/boost-build2
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

Slav
I have the experience of building pretty much of different weird
libraries for Linux (event LinuxFromScrath :) ) but it never was so
hard like with boost (for Windows!!). It took 10 hours. I even tried
to add .cpp-files to my project instead of .lib ones - but it has some
"test" definition and I gave up. Then I found out other library which
is shipped with boost's lib files - I tried to use them instead of
building them by my own - didn't helped too... Pretty sad experience
of using boost even before using it at all :).
After 6 hours I stopped cherishing hope that at some day I will build
it and already staerted to learn other "serialization" library but
after a while I started my torture again. And I think that much people
face the same problems but are not so pushy. It's need to simplify
this process somehow (I think some "bat" and "bjam" make this process
much more harder then old-style compilation using just command line
compiler) - release .cpp files, ready-to-use lib files and so one -
somehow! I vote for this :)

2010/11/22  <[hidden email]>:

> Hello,
>
> I read the documentation, I use Solaris and follow step by step the docs.
> Boost is not being build, bjam does not work even on the boost example.
> Trying to use unit test module with other previously build libs and make file, will generate errors about std.
> Maybe because it insist on having cpp.
> Yes, I did setenv to boost_dir and boost_root and change the linker option to sun.
> No one is answering my question about this on the forum, and I revel I'm not the first and only one having this troubles.
> Also it seems that the boost library is meant to serve first and most likely Microsoft users. That's a real disappointment.
> It seems to me that more effort could be made on a clear documentation, now it is vogue and lot left to the user imagination when coming to configuration. Yes, I know simply do 3 steps simply run the sh, alas, it is so simple that it don't work.
> The situation seem to be gloom and doom. A very big disappointment, and pity. It seems that lots of good people contribute to this wonderful framework but it seem to work only on Microsoft and maybe Linux, what a waste.
>
> If anybody think he can help me I will be glad to use boost, otherwise it seems that on Solaris I'll had to use Ulib or something like this.
>
> -----Original Message-----
> From: [hidden email] [mailto:[hidden email]] On Behalf Of Vladimir Prus
> Sent: Monday, November 22, 2010 9:11 AM
> To: Boost.Build developer's and user's list
> Subject: Re: [Boost-build] How to built boost?
>
> On Sunday, November 21, 2010 14:57:41 Вячеслав Блинников wrote:
>> Hello. I cannnot build the boost library. Part of it which are not
>> require .cpp file ("lexical_cast") works well and I use it already.
>> But "serialization" part usage failed ("1>LINK : fatal error LNK1104:
>> cannot open file 'libboost_serialization-vc100-mt-gd-1_45.lib'");
>> I did:
>>        - downloaded bjam.exe
>>
>>        - downloaded boost-build and unzipped it to C:\boost-build
>>
>>        - downloaded boost_1_45_0 and unzipped it to C:\boost_1_45_0
>>
>>        - issued commands like "bjam.exe --toolset=msvc
>> --prefix=C:\boost_1_45_0 --build-type=complete
>> --build-dir="C:\boost_build" --stagedir=C:\boost_build stage"
>>                           result after 5 seconds lag:
>>
>> C:/boost_1_45_0/tools/build/v2/build\configure.jam:145: in builds-raw
>>                                     *** argument error
>>                                     * rule UPDATE_NOW ( targets * :
>> log ? : ignore-minus-n ? )
>>                                     * called with: (
>> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-10.0\debug\
>>                                     threading-multi>has_icu.exe
>> <pC:\boost_build\boost\bin.v2\libs\regex\build\msvc-
>>
>> 10.0\debug\threading-multi>has_icu.pdb :  : ignore-minus-n :
>> ignore-minus-q )
>>                                     * extra argument ignore-minus-q
>>                                     (builtin):see definition of rule
>> 'UPDATE_NOW' being called
>>
>> C:/boost_1_45_0/tools/build/v2/build\configure.jam:179: in
>> configure.builds
>>
>> C:/boost_1_45_0/tools/build/v2/build\configure.jam:216: in
>> object(check-target-b
>>                                     uilds-worker)@409.check
>>                                     ...............
>>
>> C:/boost_1_45_0/tools/build/v2/build\targets.jam:848: in
>> targets.generate-from-r
>>                                     eference
>>
>> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1217: in
>> generate-dependencies
>>
>> C:/boost_1_45_0/tools/build/v2/build\targets.jam:1268: in
>> alias-target-class.gen
>>                                     erate
>>                                     Jamroot:648: in build-multiple
>>
>> Result: I don't have any .lib files.
>> What did I wrong?
>
> Well, you have not read the documentation on building ;-)
> You only have to:
>
> 1. Unpack boost
> 2. Run ".\bootstrap.bat"
> 3. Run ".\bjam.exe", optionally adding your --prefix and --build-dir and
> --build-type options.
>
> - Volodya
>
> --
> Vladimir Prus
> http://vladimir_prus.blogspot.com
> Boost.Build: http://boost.org/boost-build2
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

Vladimir Prus
On Monday, November 22, 2010 16:37:53 Вячеслав Блинников wrote:

> I have the experience of building pretty much of different weird
> libraries for Linux (event LinuxFromScrath :) ) but it never was so
> hard like with boost (for Windows!!). It took 10 hours. I even tried
> to add .cpp-files to my project instead of .lib ones - but it has some
> "test" definition and I gave up. Then I found out other library which
> is shipped with boost's lib files - I tried to use them instead of
> building them by my own - didn't helped too... Pretty sad experience
> of using boost even before using it at all :).
> After 6 hours I stopped cherishing hope that at some day I will build
> it and already staerted to learn other "serialization" library but
> after a while I started my torture again. And I think that much people
> face the same problems but are not so pushy. It's need to simplify
> this process somehow (I think some "bat" and "bjam" make this process
> much more harder then old-style compilation using just command line
> compiler) - release .cpp files, ready-to-use lib files and so one -
> somehow! I vote for this :)

Just to clarify -- have you actually tried the procedure I gave? Having
a total of 2 commands in them, it's known to work for about 99.9% of
folks who try it.

- Volodya

--
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build: http://boost.org/boost-build2
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

PrvaPonta
I have the same problem as Vjaceslav, except that I want to use GCC instead of MS Visual Studio. I have MinGW, but I read on the Boost website (not happy with the documentation there!) that MSYS may not work, so I'm using the Windows command prompt (MSYS gives the same error anyway).

As for V. Prus' simple suggestion:

1. Unpack boost
2. Run ".\bootstrap.bat"
3. Run ".\bjam.exe", optionally adding your --prefix and --build-dir and
--build-type options.

that does not work for several reasons. Beside the fact that unpacking Boost does not include bjam.exe, running bootstrap.bat results in the following error message:
--
Building Boost.Jam build engine
'cl' is not recognized as an internal or external command,
operable program or batch file.

Failed to build Boost.Jam build engine.
Please consult bjam.log for furter diagnostics.

You can try to obtain a prebuilt binary from

   http://sf.net/project/showfiles.php?group_id=7586&package_id=72941

Also, you can file an issue at http://svn.boost.org
Please attach bjam.log in that case.
--

Plus, there is no bjam.log in the BOOST_ROOT directory. Downloading and running bjam.exe gives the long error that Vjaceslav (Вячеслав) posted already. Since I don't use MSVC, I cannot follow his example.

Any suggestions?
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

Juergen Hunold-2
Hi,

On Monday, 14. March 2011 14:40:32 PrvaPonta wrote:
> I have the same problem as Vjaceslav, except that I want to use GCC instead
> of MS Visual Studio. I have MinGW, but I read on the Boost website (not
> happy with the documentation there!) that MSYS may not work, so I'm using
> the Windows command prompt (MSYS gives the same error anyway).
>
> As for V. Prus' simple suggestion:
>
> 1. Unpack boost
> 2. Run ".\bootstrap.bat"

Well, that is for msvc which is usually autodetectable. For gcc, you should
have g++ in the PATH and issue "bootstrap.bat gcc"

> 3. Run ".\bjam.exe", optionally adding your --prefix and --build-dir and
> --build-type options.
>
> that does not work for several reasons. Beside the fact that unpacking
> Boost does not include bjam.exe, running bootstrap.bat results in the
> following error message:
> --
> Building Boost.Jam build engine
> 'cl' is not recognized as an internal or external command,
> operable program or batch file.

No mvsc detected.

> Failed to build Boost.Jam build engine.
> Please consult bjam.log for furter diagnostics.

Ah well, that is now "bootstrap.log". Documentation glitch. Should already be
fixed in current trunk

> You can try to obtain a prebuilt binary from
>
>    http://sf.net/project/showfiles.php?group_id=7586&package_id=72941
>
> Also, you can file an issue at http://svn.boost.org
> Please attach bjam.log in that case.

Those have already disappeared.

> Plus, there is no bjam.log in the BOOST_ROOT directory. Downloading and
> running bjam.exe gives the long error that Vjaceslav (Вячеслав) posted
> already. Since I don't use MSVC, I cannot follow his example.
>
> Any suggestions?

use "bootstrap.bat gcc" and the latest Boost (1.46.1)

Yours,

Jürgen
--
* Dipl.-Math. Jürgen Hunold       ! Ingenieurgesellschaft für
* voice: ++49 511 262926 57       ! Verkehrs- und Eisenbahnwesen mbH  
* fax  : ++49 511 262926 99       ! Lister Straße 15
* [hidden email]        ! www.ivembh.de
*
* Geschäftsführer:                ! Sitz des Unternehmens: Hannover
* Prof. Dr.-Ing. Thomas Siefer    ! Amtsgericht Hannover, HRB 56965
* PD Dr.-Ing. Alfons Radtke       !

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

PrvaPonta
Jürgen,

thank you for your answer. Gcc/g++ is in PATH (via MinGW), but running bootstrap.bat with the gcc option gives the same error as above.
I could try to replace my 1.45.0 version with 1.46, but I'm reluctant to do that, since I have to change my includes in all the projects. But if that's the only thing that will make the sources compile, then ok.
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

PrvaPonta
Here's the solution (I also uncommented the gcc option in user-config): http://stackoverflow.com/questions/5299468/unable-to-build-boost-libraries-with-gcc/5299640#5299640
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

PrvaPonta
Alright, a new problem: building a complete set of libraries took about an hour and a half, but it did not compile the one I need at the moment: Filesystem. The problem I have is similar to the one described in https://groups.google.com/group/boost-list/browse_thread/thread/b42072f150d2cbe1?pli=1, but the solutions proposed there did not work for me.

I have Boost 1.45.0 and thus try to build version 2 of the filesystem, doing so with the minGW-created bjam.

I run bjam as follows: bjam --toolset=gcc --build-type=complete --with-filesystem define="BOOST_FILESYSTEM_VERSION=3" stage
I get the following error:

--
gcc.compile.c++ bin.v2\libs\filesystem\build\gcc-mingw-4.5.2\debug\v3\src\operations.o
In file included from ./boost/config.hpp:26:0,
                 from libs\filesystem\v3\src\operations.cpp:13:
./boost/config/user.hpp:126:0: warning: "BOOST_FILESYSTEM_VERSION" redefined
<command-line>:0:0: note: this is the location of the previous definition
In file included from ./boost/filesystem/v3/operations.hpp:24:0,
                 from libs\filesystem\v3\src\operations.cpp:48:
./boost/filesystem/v3/config.hpp:16:5: error: #error Compiling Filesystem versio
n 3 file with BOOST_FILESYSTEM_VERSION defined != 3
libs\filesystem\v3\src\operations.cpp:647:26: warning: '<unnamed>::create_symbol
ic_link_api' defined but not used

    "g++"  -ftemplate-depth-128 -O0 -fno-inline -Wall -g  -DBOOST_ALL_NO_LIB=1 -
DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_FILESYSTEM_VERSION=3 -DBOOST_SYSTEM_DYN_LIN
K=1  -I"." -c -o "bin.v2\libs\filesystem\build\gcc-mingw-4.5.2\debug\v3\src\oper
ations.o" "libs\filesystem\v3\src\operations.cpp"

...failed gcc.compile.c++ bin.v2\libs\filesystem\build\gcc-mingw-4.5.2\debug\v3\
src\operations.o...
gcc.compile.c++ bin.v2\libs\filesystem\build\gcc-mingw-4.5.2\debug\v3\src\path.o

--
and a lot more of the same. (I'm getting a similar message regardless of whether I define filesystem version 2 or 3).

Are there some configuration settings that need to be modified? Any other things, perhaps?
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

PrvaPonta
The problem was solved by setting the BOOST_FILESYSTEM_VERSION to 3 in the user.hpp file. I don't like the fact that bjam wanted to compile version 3 only, but for now that is the solution.

I will report any other issues that I may encounter later.
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

PrvaPonta
Alright, the program that uses Filesystem compiles and runs without problem, but only if used by itself.
If I use Filesystem within a program that also needs OpenCV and Eigen libraries, there seems to be a conflict:
...
In file included from C:\boost_1_45_0/boost/filesystem/v3/path_traits.hpp:22:0,
                 from C:\boost_1_45_0/boost/filesystem/v3/path.hpp:25,
                 from C:\boost_1_45_0/boost/filesystem.hpp:32,
                 from ..\src\ComputeNatScaleFunction.cpp:18:
C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of 'boost::decay<cv::<anonymous enum> >':
C:\cmake_binaries\include/opencv2/core/operations.hpp:766:23:   instantiated from here
C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'cv::<anonymous enum>' is/uses anonymous type
C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error:   trying to instantiate 'template<class T> struct boost::remove_reference'
C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'cv::<anonymous enum>' is/uses anonymous type
C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error:   trying to instantiate 'template<class T> struct boost::remove_reference'
C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of 'boost::decay<cv::<anonymous enum> >':
C:\cmake_binaries\include/opencv2/core/operations.hpp:917:21:   instantiated from here
C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'cv::<anonymous enum>' is/uses anonymous type
C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error:   trying to instantiate 'template<class T> struct boost::remove_reference'
C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'cv::<anonymous enum>' is/uses anonymous type
C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error:   trying to instantiate 'template<class T> struct boost::remove_reference'
C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of 'boost::decay<Eigen::<anonymous enum> >':
C:\Eigen2/Eigen/src/Core/GenericPacketMath.h:116:18:   instantiated from here
C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'Eigen::<anonymous enum>' is/uses anonymous type
C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error:   trying to instantiate 'template<class T> struct boost::remove_reference'
C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'Eigen::<anonymous enum>' is/uses anonymous type
C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error:   trying to instantiate 'template<class T> struct boost::remove_reference'

etc.

Are there known conflicts between Boost and OpenCV/Eigen/other libraries? I am using Eclipse CDT and MinGW toolchain. After going through previously described problems, my Filesystem library is of version 3, whereas other ones are of version 2.
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

PrvaPonta
In reply to this post by Juergen Hunold-2
Hi guys,

could you please look at the newest problem I posted in the thread below (http://boost.2283326.n4.nabble.com/How-to-built-boost-td3053130.html)? I have an issue with compiling Boost when OpenCV and Eigen are used as well.

Cheers,

PP


Da: Jürgen Hunold <[hidden email]>
A: Boost.Build developer's and user's list <[hidden email]>
Inviato: Lun 14 marzo 2011, 16:41:43
Oggetto: Re: [Boost-build] How to built boost?

Hi,

On Monday, 14. March 2011 14:40:32 PrvaPonta wrote:
> I have the same problem as Vjaceslav, except that I want to use GCC instead
> of MS Visual Studio. I have MinGW, but I read on the Boost website (not
> happy with the documentation there!) that MSYS may not work, so I'm using
> the Windows command prompt (MSYS gives the same error anyway).
>
> As for V. Prus' simple suggestion:
>
> 1. Unpack boost
> 2. Run ".\bootstrap.bat"

Well, that is for msvc which is usually autodetectable. For gcc, you should
have g++ in the PATH and issue "bootstrap.bat gcc"

> 3. Run ".\bjam.exe", optionally adding your --prefix and --build-dir and
> --build-type options.
>
> that does not work for several reasons. Beside the fact that unpacking
> Boost does not include bjam.exe, running bootstrap.bat results in the
> following error message:
> --
> Building Boost.Jam build engine
> 'cl' is not recognized as an internal or external command,
> operable program or batch file.

No mvsc detected.

> Failed to build Boost.Jam build engine.
> Please consult bjam.log for furter diagnostics.

Ah well, that is now "bootstrap.log". Documentation glitch. Should already be
fixed in current trunk

> You can try to obtain a prebuilt binary from
>
>    http://sf.net/project/showfiles.php?group_id=7586&package_id=72941
>
> Also, you can file an issue at http://svn.boost.org
> Please attach bjam.log in that case.

Those have already disappeared.

> Plus, there is no bjam.log in the BOOST_ROOT directory. Downloading and
> running bjam.exe gives the long error that Vjaceslav (Вячеслав) posted
> already. Since I don't use MSVC, I cannot follow his example.
>
> Any suggestions?

use "bootstrap.bat gcc" and the latest Boost (1.46.1)

Yours,

Jürgen
--
* Dipl.-Math. Jürgen Hunold      ! Ingenieurgesellschaft für
* voice: ++49 511 262926 57      ! Verkehrs- und Eisenbahnwesen mbH 
* fax  : ++49 511 262926 99      ! Lister Straße 15
* [hidden email]        ! www.ivembh.de
*
* Geschäftsführer:                ! Sitz des Unternehmens: Hannover
* Prof. Dr.-Ing. Thomas Siefer    ! Amtsgericht Hannover, HRB 56965
* PD Dr.-Ing. Alfons Radtke      !

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: How to built boost?

Vladimir Prus
In reply to this post by PrvaPonta
On Tuesday, March 15, 2011 16:33:03 PrvaPonta wrote:

> Alright, the program that uses Filesystem compiles and runs without
> problem, but only if used by itself.
> If I use Filesystem within a program that also needs OpenCV and Eigen
> libraries, there seems to be a conflict:
> ...
> In file included from
> C:\boost_1_45_0/boost/filesystem/v3/path_traits.hpp:22:0,
>                  from C:\boost_1_45_0/boost/filesystem/v3/path.hpp:25,
>                  from C:\boost_1_45_0/boost/filesystem.hpp:32,
>                  from ..\src\ComputeNatScaleFunction.cpp:18:
> C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of
> 'boost::decay&lt;cv::&lt;anonymous enum&gt; >':
> C:\cmake_binaries\include/opencv2/core/operations.hpp:766:23:  
> instantiated from here
> C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'cv::' is/uses
> anonymous type
> C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error:   trying to
> instantiate 'template struct boost::remove_reference'
> C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'cv::' is/uses
> anonymous type
> C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error:   trying to
> instantiate 'template struct boost::remove_reference'
> C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of
> 'boost::decay&lt;cv::&lt;anonymous enum&gt; >':
> C:\cmake_binaries\include/opencv2/core/operations.hpp:917:21:  
> instantiated from here
> C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'cv::' is/uses
> anonymous type
> C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error:   trying to
> instantiate 'template struct boost::remove_reference'
> C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'cv::' is/uses
> anonymous type
> C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error:   trying to
> instantiate 'template struct boost::remove_reference'
> C:\boost_1_45_0/boost/type_traits/decay.hpp: In instantiation of
> 'boost::decay&lt;Eigen::&lt;anonymous enum&gt; >':
> C:\Eigen2/Eigen/src/Core/GenericPacketMath.h:116:18:   instantiated from
> here
> C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error: 'Eigen::' is/uses
> anonymous type
> C:\boost_1_45_0/boost/type_traits/decay.hpp:28:66: error:   trying to
> instantiate 'template struct boost::remove_reference'
> C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error: 'Eigen::' is/uses
> anonymous type
> C:\boost_1_45_0/boost/type_traits/decay.hpp:38:17: error:   trying to
> instantiate 'template struct boost::remove_reference'
>
> etc.
>
> Are there known conflicts between Boost and OpenCV/Eigen/other libraries? I
> am using Eclipse CDT and MinGW toolchain. After going through previously
> described problems, my Filesystem library is of version 3, whereas other
> ones are of version 2.

I suggest you ask this questions on [hidden email] mailing list.
Folks on this list can help with Boost.Build, but once you get in compile errors
land, you'll have much wider audience on that other list.

HTH,

--
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build: http://boost.org/boost-build2
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build