Suppress generation of unversioned .lib
Is it possible to suppress generation of the unversioned .lib file when building on Windows? Braden
Braden McDaniel wrote:
Is it possible to suppress generation of the unversioned .lib file when building on Windows?
] cd <boost-root> ] bjam --help ...snip... --layout=<layout> Determines whether to choose library names and header locations such that multiple versions of Boost or multiple compilers can be used on the same system. versioned (default) - Names of boost binaries include the Boost version number and the name and version of the compiler. Boost headers are installed in a subdirectory of <HDRDIR> whose name contains the Boost version number. system - Binaries names do not include the Boost version number or the name and version number of the compiler. Boost headers are installed directly into <HDRDIR>. This option is intended for system integrators who are building distribution packages. ...end-snip... HTH. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo
Rene Rivera wrote:
Braden McDaniel wrote:
Is it possible to suppress generation of the unversioned .lib file when building on Windows?
] cd <boost-root> ] bjam --help ...snip... --layout=<layout> Determines whether to choose library names and header locations such that multiple versions of Boost or multiple compilers can be used on the same system.
versioned (default) - Names of boost binaries include the Boost version number and the name and version of the compiler. Boost headers are installed in a subdirectory of <HDRDIR> whose name contains the Boost version number.
system - Binaries names do not include the Boost version number or the name and version number of the compiler. Boost headers are installed directly into <HDRDIR>. This option is intended for system integrators who are building distribution packages. ...end-snip...
HTH.
The default build on windows builds both versioned *and* unversioned libs (at least for 1.34.0 - can't remember back to 1.33.1 building). If specifying "--layout=versioned" on the bjam command line results in *only* versioned libs then the bjam 'default' is actually something else, no? -Chris
Christopher Woods wrote:
Rene Rivera wrote:
Braden McDaniel wrote:
Is it possible to suppress generation of the unversioned .lib file when building on Windows? ] cd <boost-root> ] bjam --help ...snip... --layout=<layout> Determines whether to choose library names and header locations such that multiple versions of Boost or multiple compilers can be used on the same system.
versioned (default) - Names of boost ...
system - Binaries names do not include ... ...end-snip...
HTH.
The default build on windows builds both versioned *and* unversioned libs (at least for 1.34.0 - can't remember back to 1.33.1 building). If specifying "--layout=versioned" on the bjam command line results in *only* versioned libs then the bjam 'default' is actually something else, no?
The libs versioned creates are internally versioned. It only creates *links/copies* with the unversioned names. For example, in Windows, if you link to the unversioned DLL link library (boost_*.lib), the resulting binary will depend on the versioned DLLs. Same applies on the Unix side. The libs produced by the system layout, are built internally without the version info (if I remember correctly). -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo
Rene Rivera wrote: [snip]
The libs versioned creates are internally versioned. It only creates *links/copies* with the unversioned names.
Yes; it's exactly this copy that I'd like to suppress. Is there a way to do that? (Brutal modifications to the Boost build infrastructure are welcome suggestions; I just need some direction here.)
For example, in Windows, if you link to the unversioned DLL link library (boost_*.lib), the resulting binary will depend on the versioned DLLs. Same applies on the Unix side.
I don't think so. Looking at Solaris, anyway: $ ls -shF lib/libboost_thread* 1.0K lib/libboost_thread-sw-mt-d-1_34.so@ 240K lib/libboost_thread-sw-mt-d-1_34.so.1.34.0* 240K lib/libboost_thread-sw-mt-d.so* That's after building with "variant=debug link=shared threading=multi". The first listed there is a symlink; the latter two are not. I'm reasonably sure that if I linked against the last one in this listing, that dependency is exactly what I'd get. Braden
Braden McDaniel wrote:
Rene Rivera wrote:
[snip]
The libs versioned creates are internally versioned. It only creates *links/copies* with the unversioned names.
Yes; it's exactly this copy that I'd like to suppress. Is there a way to do that? (Brutal modifications to the Boost build infrastructure are welcome suggestions; I just need some direction here.)
Open up boost-root/Jamfile.v2 and comment out, or delete, these lines: generate stage-unversioned : stage-proper : <generating-rule>@make-unversioned-links ; explicit stage-unversioned ; generate install-unversioned : install-proper : <generating-rule>@make-unversioned-links ; explicit install-unversioned ;
For example, in Windows, if you link to the unversioned DLL link library (boost_*.lib), the resulting binary will depend on the versioned DLLs. Same applies on the Unix side.
I don't think so. Looking at Solaris, anyway:
$ ls -shF lib/libboost_thread* 1.0K lib/libboost_thread-sw-mt-d-1_34.so@ 240K lib/libboost_thread-sw-mt-d-1_34.so.1.34.0* 240K lib/libboost_thread-sw-mt-d.so*
That's after building with "variant=debug link=shared threading=multi". The first listed there is a symlink; the latter two are not. I'm reasonably sure that if I linked against the last one in this listing, that dependency is exactly what I'd get.
That would be a mistaken expectation ;-) Note that those last two are exactly the same size. They aren't copies and rebuilt libs. They are hard-links to the same inode. As in it executes: ln libboost_thread-sw-mt-d-1_34.so.1.34.0 libboost_thread-sw-mt-d.so Hence the soname in the library is still the versioned in both. Which is what ELF, and others, will use to reference to link in the future to the library. Of course the soname only applies to platforms which have such support. So your statement may be true in some minority of platforms. Additionally, for Windows, the link library that matches the DLL refers to the versioned DLL, since it's just a copy of the versioned link library. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo
I have been looking for a timer callback function in any boost library. I
saw something like below by searching on the web:
bool set_timer(time_duration_t fireTime, boost::function
Sending again because first attempt did not go through...
-----Original Message-----
From: fanz [mailto:fanzhe_cui@yahoo.com]
Sent: Thursday, May 24, 2007 2:39 PM
To: 'boost-users@lists.boost.org'
Subject: Looking for boost library for timer callback function
I have been looking for a timer callback function in any boost library. I
saw something like below by searching on the web:
bool set_timer(time_duration_t fireTime, boost::function
fanz wrote:
Sending again because first attempt did not go through...
-----Original Message----- From: fanz [mailto:fanzhe_cui@yahoo.com] Sent: Thursday, May 24, 2007 2:39 PM To: 'boost-users@lists.boost.org' Subject: Looking for boost library for timer callback function
I have been looking for a timer callback function in any boost library. I saw something like below by searching on the web:
bool set_timer(time_duration_t fireTime, boost::function
); But it did not give me further clue about which library contains this function. I also saw a discussion on the web about using ASIO but the document did not let me complete understand it.
Does anyone has info about which library has the function of Timer callback?
You want asio deadline_timer. Here's a reference page and tutorial pages: http://asio.sourceforge.net/boost_asio_0_3_7/libs/asio/doc/reference/a00105.... http://asio.sourceforge.net/boost_asio_0_3_7/libs/asio/doc/tutorial/tuttimer... Because asio isn't in 1.34 you'll either need to checkout from the latest CVS or put the asio distribution on top of 1.34 which works with the 0.3.7 version. Jeff
Hi,
Why this msg posted did not go through? Can anybody have a look at this and
tell me what was wrong with it?
Thank you!
Fanzhe
-----Original Message-----
From: fanz [mailto:fanzhe_cui@yahoo.com]
Sent: Thursday, May 24, 2007 5:21 PM
To: 'boost-users@lists.boost.org'
Subject: [Boost-users] Looking for boost library for timer callback function
Sending again because first attempt did not go through...
-----Original Message-----
From: fanz [mailto:fanzhe_cui@yahoo.com]
Sent: Thursday, May 24, 2007 2:39 PM
To: 'boost-users@lists.boost.org'
Subject: Looking for boost library for timer callback function
I have been looking for a timer callback function in any boost library. I
saw something like below by searching on the web:
bool set_timer(time_duration_t fireTime, boost::function
Why this msg posted did not go through? Can anybody have a look at this and tell me what was wrong with it?
I see all 3 postings, check your mailing list settings (there is an option that you don't receive your own postings). Cheers, Filip
Filip, Thank you! I just changed my email list option setting and I was able see my posting back. Regards, Fanz -----Original Message----- From: boost-users-bounces@lists.boost.org [mailto:boost-users-bounces@lists.boost.org] On Behalf Of Filip Konvicka Sent: Tuesday, May 29, 2007 7:56 AM To: boost-users@lists.boost.org Subject: Re: [Boost-users] Looking for boost library for timer callback function
Why this msg posted did not go through? Can anybody have a look at this and tell me what was wrong with it?
I see all 3 postings, check your mailing list settings (there is an option that you don't receive your own postings). Cheers, Filip _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
I have posted the msg but did not get anything back. If someone can provide
any info, it is appreciated.
Thanks
Fanz
-----Original Message-----
From: fanz [mailto:fanzhe_cui@yahoo.com]
Sent: Thursday, May 24, 2007 5:21 PM
To: 'boost-users@lists.boost.org'
Subject: [Boost-users] Looking for boost library for timer callback function
Sending again because first attempt did not go through...
-----Original Message-----
From: fanz [mailto:fanzhe_cui@yahoo.com]
Sent: Thursday, May 24, 2007 2:39 PM
To: 'boost-users@lists.boost.org'
Subject: Looking for boost library for timer callback function
I have been looking for a timer callback function in any boost library. I
saw something like below by searching on the web:
bool set_timer(time_duration_t fireTime, boost::function
participants (6)
-
Braden McDaniel
-
Christopher Woods
-
fanz
-
Filip Konvička
-
Jeff Garland
-
Rene Rivera