Thanks Merrill,<br> i'm actually using scons, not make... and I didn't code that part, so I'll have to look at it. Is the problem not the extensions (.dll/.lib vs .so/.a)? Why didn't boost name them properly when I specified mingw? <br> <br> Thanks,<br> Imran<br><br><div><span class="gmail_quote">On 12/15/05, <b class="gmail_sendername">Merrill Cornish</b> <<a href="mailto:merrill.cornish@earthlink.net">merrill.cornish@earthlink.net</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> Imran,<br><br>I've using Boost 1.33.0 with the latest MinGW on Windows XP, and it works fine.<br><br>Could you be a bit more specific as to why MinGW "can't use" the Boost libraries?<br>Do you mean that references are left unresolved? <br><br>Here is an excerpt from the part of my my Makefile that deals with libraries:<br><br>BOOSTLIBS = -L${boost_libs} \<br> -llibboost_date_time${boost_suffix} \<br> -llibboost_filesystem${boost_suffix} \<br> -llibboost_regex${boost_suffix} \ <br> -llibboost_serialization${boost_suffix} \<br> -llibboost_thread${boost_suffix} \<br> -llibboost_program_options${boost_suffix}<br><br>where ${boost_libs} expands into the pathname of the directory the Boost <br>libraries are in and ${boost_suffix} expands into "-mgw-mt-sd-1_33", which<br>says the libraries are compiled for MinGW, multi-threaded, static, debug, and<br>Boost version 1.33.<br><br>I put ${BOOSTLIBS} as the LAST thing on the call to g++ to link my .exe <br>file. Notice that the positioning is important.<br><br>The linker reads the files listed on the command line from left to right.<br>When it comes to a library file, it resolves whatever outstanding references<br>to that library it has AT THAT POINT in the scan. If it sees another reference <br>to that library later in the left to right scan after seeing the library, that later<br>reference goes unresolved.<br><br>The linker needs to see ALL references to library functions BEFORE it<br>sees the libraries themselves. So, put the libraries last. <br><br>The Boost library build process creates the libraries both with the Boost<br>version suffix ("1_33" in my case) and without. You can use either one as<br>they are identical files.<br><br>The idea is that if you use the library file versions WITHOUT the version <br>number suffix, then you won't have to change your Makefile when a new<br>version comes out. On the other hand, if you want to explicitly tie your<br>program to one and only one version of the Boost libraries, you can use the <br>filename WITH the version numbers.<br><br>Merrill<br>_______________________________________________<br>Boost-users mailing list<br><a href="mailto:Boost-users@lists.boost.org">Boost-users@lists.boost.org</a><br><a href="http://lists.boost.org/mailman/listinfo.cgi/boost-users"> http://lists.boost.org/mailman/listinfo.cgi/boost-users</a><br></blockquote></div><br>