[xsd-users] link with installed archives?

Ray Lischner rlischner at proteuseng.com
Thu May 23 15:09:37 EDT 2013


Using 3.3.0 on Linux, I am trying to build xsd so it links with installed versions of archives instead of shared objects. The reason is that in our cross-compile environment, there are times when I want to run xsd in an environment where the cross-compiler is installed, along with the cross-compiled versions of boost, xerces, etc., but the native versions of boost, xerces, etc., are not readily available. If I can link everything statically into xsd, it makes my life easier--I have only one file to move around and make available on the system where the cross-compiling will take place.

I've tried to change -lboost_date_time to -l:libboost_date_time.a in stub.make, but that doesn't work. I guess the colon interferes with the build system, which clearly uses colons for its own use (e.g., l: -lboost_date_time). I succeeded by changing -lboost_date_time to $(boost_root)/libboost_date_time.a, and adding a definition of boost_root to a configuration-dynamic.make file.

This works, but is there an easier way? I would like $(libboost_type) and $(libxerces_c_type) to be used even when I use the "installed" version of imported libraries.

Ray Lischner,
Distinguished Member of Technical Staff
133 National Business Pkwy, Ste 150     t. 443.539.3448
Annapolis Junction, MD 20701            c. 410.854.9787
rlischner at proteuseng.com                f. 443.539.3370


More information about the xsd-users mailing list