Igor Zavoychinskiy | 6 Feb 21:59
Picon
Gravatar

Building sgd library versions

Hello there,

Not sure if I'm writing to the correct place. Please feel free to correct me and point the right one.

Building boost 1.48 on Win7 for MSVC.2008 I discover a strange behavior: sgd versions are not get built if you request them explicitly. When I specify the following command:
b2.exe --stagedir=./ --build-dir=/tmp --toolset=msvc-9.0 threading=multi --link=static --runtime-link=static --with-thread

I expect to get the following libraries:
libboost_thread-vc90-mt-s-1_48.lib
libboost_thread-vc90-mt-sgd-1_48.lib

But in fact I get:
libboost_thread-vc90-mt-1_48.lib
libboost_thread-vc90-mt-gd-1_48.lib

Setting "--runtime-link=shared" results in the exactly the same set of output libraries which makes me believe this flag is just ignored.

I know the workaround and here is it:
b2.exe --stagedir=./ --build-dir=/tmp --toolset=msvc-9.0 --with-thread --build-type=complete

This way I get all the libraries built including the sgd versions. Though, I'd say this workaround is kind of expensive. Especially for continues build systems.

- Igor
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Thorsten Ottosen | 2 Feb 15:19

changing lib prefix for static libraries on windows?

Hi all,

I found this old discussion:

http://boost.2283326.n4.nabble.com/quot-lib-quot-prefix-for-cross-compiled-library-in-cygwin-environment-td2685314.html

Basically, I would like to get rid of the "lib" prefix for static 
libraries on windows.

Can this be done now?

Thanks

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

Lavanya Raghunath | 30 Jan 21:22
Picon
Favicon
Gravatar

Linker warnings

Hi,

Am using boost libraries by building from source and when I use #include <boost/program_options.hpp> in my code, I get the following linker warnings for any function used: 
warning LNK4217: locally defined symbol ??1cmdline <at> detail <at> program_options <at> boost <at> <at> QAE <at> XZ (public: __thiscall boost::program_options::detail::cmdline::~cmdline(void)) imported in function "public: __thiscall boost::program_options::basic_command_line_parser<char>::~basic_command_line_parser<char>(void)" (??1?$basic_command_line_parser <at> D <at> program_options <at> boost <at> <at> QAE <at> XZ)
I am using VS 2008 on Windows 7. The functionality does work but I just get a bunch of these warnings. Any help will be appreciated. Thanks!!
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Dr. Karsten Ahnert | 28 Jan 21:17
Picon

msvc: shared objects and static libs problem

Hi,

I have a a project with several dynamic libraries and some applications. 
Some of these libraries depend on other libraries.

In the Jamroot I created aliases to all libraries and in the Jamfiles 
for the single library I include all depend libraries via these aliases. 
This works fine on linux (boost 1.48) but does not work on Windows 
machines. The problem is that bjam tries to find the static versions of 
the depended libraries which have not been build:

LINK : fatal error LNK1181: cannot open input file '*.lib'

I attached a small self contained example. Any ideas how I can fix this?

Thank you,

Karsten
Attachment (test_lib.zip): application/zip, 4128 bytes
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Matthew Chambers | 26 Jan 21:51
Picon
Gravatar

--abbreviate-paths for on/off and true/false features

I just noticed that abbreviate-paths is giving "tr" for "true". It's not very readable. I suggest 
that on/true be a special case that abbreviates to '1' and off/false to '0'.

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

Matthew Chambers | 26 Jan 17:04
Picon
Gravatar

How do I import a path-constant or constant from a non-parent Jamfile?

I have a Jamfile hierarchy like:

data/reader/vendor/Jamfile
utility/api/vendor/Jamfile

I want to access variables declared in utility/api/vendor/Jamfile from data/reader/vendor/Jamfile. 
How can I do that?

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

James Gregory | 24 Jan 14:09
Picon
Gravatar

Building iostreams with zlib with MSVC

I previously built iostreams successfully with no error messages, but
now I want to build it with zlib support. So I downloaded a zlib
binary distribution from the zlib homepage, and tried building
iostreams with:

b2.exe -s ZLIB_INCLUDE=C:\Users\james\dev\cpplib\zlib\include -s
ZLIB_LIBPATH=C:\Users\james\dev\cpplib\zlib\lib --with-iostreams stage

The output is:

error: No best alternative for libs/iostreams/build/boost_zlib
    next alternative: required properties: (empty)
        matched
    next alternative: required properties: (empty)
        matched
error: No best alternative for libs/iostreams/build/boost_zlib
    next alternative: required properties: (empty)
        matched
    next alternative: required properties: (empty)
        matched
error: No best alternative for libs/iostreams/build/boost_zlib
    next alternative: required properties: (empty)
        matched
    next alternative: required properties: (empty)
        matched
error: No best alternative for libs/iostreams/build/boost_zlib
    next alternative: required properties: (empty)
        matched
    next alternative: required properties: (empty)
        matched

Component configuration:

    - chrono                   : not building
    - date_time                : not building
    - exception                : not building
    - filesystem               : not building
    - graph                    : not building
    - graph_parallel           : not building
    - iostreams                : building
    - locale                   : not building
    - math                     : not building
    - mpi                      : not building
    - program_options          : not building
    - python                   : not building
    - random                   : not building
    - regex                    : not building
    - serialization            : not building
    - signals                  : not building
    - system                   : not building
    - test                     : not building
    - thread                   : not building
    - timer                    : not building
    - wave                     : not building

...patience...
...found 561 targets...
...updating 6 targets...
compile-c-c++ bin.v2\libs\iostreams\build\msvc-10.0\debug\link-static\threading-multi\zlib.obj
zlib.cpp
libs\iostreams\src\zlib.cpp(20) : fatal error C1083: Cannot open
include file: 'zlib.h': No such file or directory

<snip>

///////

Also, typing:

cd C:\Users\james\dev\cpplib\zlib\include
dir

gives the output:

 Volume in drive C has no label.
 Volume Serial Number is E8AD-ECD4

 Directory of C:\Users\james\dev\cpplib\zlib\include

24/01/2012  12:12    <DIR>          .
24/01/2012  12:12    <DIR>          ..
18/04/2010  17:58            13,375 zconf.h
20/04/2010  04:12            79,564 zlib.h
               2 File(s)         92,939 bytes
               2 Dir(s)  58,448,453,632 bytes free

////

Can anyone point me in the right direction?

Thanks,

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

Nogradi, Chris | 23 Jan 19:28
Favicon

Partial linking

Has anyone used Boost.build to do partial linking?  I am trying to do this:

 

obj O : [ glob *.c ] ;

 

to create a partially linked object that can then be used later like this:

 

exe E : main.cpp O ;

But it appears that each input produces a matching output for the obj rule because I get a duplicate name of actual target for O.obj

 

There are many reasons to do this but my immediate application is in an embedded environment where it is especially useful to link groups of code at particular memory locations which I don’t think can be accomplished using static libs (i.e. archives). 

 

The compile.c action (for gcc for example) seems to suggest that multiple sources and targets can be used but I don’t understand how:

 

rule compile.c ( targets * : sources * : properties * )

 

The closest relevant article I could find on this in the mailing list is this:

 

http://thread.gmane.org/gmane.comp.lib.boost.build/12134

 

But no answer was provided.  The suggestion in the same article for using multiple source inputs to the compiler seems relevant maybe?

 

Thanks,

 

Chris


This e-mail and any attachments may contain confidential material for the sole use of the intended recipient. If you are not the intended recipient, please be aware that any disclosure, copying, distribution or use of this e-mail or any attachment is prohibited. If you have received this e-mail in error, please contact the sender and delete all copies.

Thank you for your cooperation.
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Picon

[build] How to build a multi version non-header-library

Hi,

I want to provide two versions for Boost.Thread, one using Boost.Chrono 
and the other not. Boost.Thread is a non-header-only library so I guess 
that I need to build two libraries with different names. Is there 
already a library in Boost in the same context on which I can base my 
build design? What is the simples way to do this with Boost.build? Any 
pointers to the doc?

Thanks in advance,
Vicente
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

lepere | 17 Jan 16:13
Picon
Favicon

.i file suffix problem

I'm using Swig and bbv2 and i use .i as suffix for swig input file. This 
was working well in the past but with latest bbv2 i got an error : 
preprocessed.jam already define this suffix.

type.register SWIG : i ;
generators.register-standard alma.swig : SWIG : CPP ;

feature.feature swig-options : : free ;
toolset.flags alma.swig OPTIONS <swig-options> ;

rule swig { }
actions swig {
         swig  $(OPTIONS) -o $(<) $(>)
}

C:/Renaud/alma/BuildTools/bbv2/build\type.jam:123: in register-suffixes 
from module type
error: Attempting to specify multiple types for suffix "i"
error: Old type PREPROCESSED_C, New type SWIG
C:/Renaud/alma/BuildTools/bbv2/build\type.jam:58: in type.register from 
module type

What should i do ?
- Change my swig suffix to something more explicit (.swig_i)
- or can i disable PREPROCESSED_C.

Thanks

Renaud

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

Karsten Ahnert | 16 Jan 21:34
Picon

aliases for sublibraries

Hi,

I have a tree like structure for a small software project:

Root
 + Jamroot
 + apps
   + app1.exe
   + ...
   + Jamfile
 + libsraries
   + lib1
     + source1.cpp
     + ...
     + Jamfile
   + lib2
     + source1.cpp
     + ...
     + Jamfile

In each of the lib* directories a static or shared library is created.
Now, some of these libraries depend on other for example lib2 depends on
lib1 and I want to use aliases to reference on the depend library.

I created these aliases in the Jamroot, via

alias /MyProject/lib1 : ./libraries/lib1//lib1 ;
alias /MyProject/lib2 : ./libraries/lib1//lib2 ;

but referencing them does not work. If I call bjam from the root
directory I obtain:

error: Unable to find file or target named
error:     '/MyProject/lib1'
error: referred from project at
error:     'libs/lib2'

Is there a easy way to create such aliases? Similar to
/boost//filesystem ? I played around with different names (leading
slashed) and I tried to use appropriate project names but I was unable
to figure out how it works in general.

Thank you,

Karsten

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


Gmane