hi Jeff, On Mon, Jun 14, 2010 at 6:24 AM, Jeff Hyams wrote: > I am trying to get ROS to compile with 32 bit (-m32) libraries on an 64 bit > kernel.  I am wondering two things > about the build: > > 1.  Is there a way in one of my nodes to "inject" the -m32 compile option to > all dependent packages when building my package? Or will >      I need to edit each individual package's CMake files to get the -m32 > option in there? The build system allows you to specify default compile and link flags to be passed to all packages: http://www.ros.org/wiki/rosbuild#Customizing_the_build_.28debug.2C_optimizations.2C_default_build_flags.29 . For example, if you want to add "-m32" to all compile and link steps for all packages, you could put these lines in $ROS_ROOT/rosconfig.cmake (manually prepending the default values from rosbuild/rosconfig.cmake): set(ROS_COMPILE_FLAGS "-W -Wall -Wno-unused-parameter -fno-strict-aliasing -pthread -m32") set(ROS_LINK_FLAGS "-pthread -m32") Alternatively, if you want only packages that depend on package 'foo' to be built with certain flags, you can export them from foo/manifest.xml, e.g.: Note that this mechanism does *not* allow you to specify build flags for packages on which 'foo' depends. Package dependency is one-way. > 2.  I think the answer to the following is that it I'd have to do it myself, > but I'll ask anyways: >        I need to still compile 64 bit ROS packages as well as my single 32 > bit package.  Is there a method in the build system already to allow >        both 32 bit and 64-bit compiled libraries to exist in a single ROS > home? No, there is no support for building libraries (or executables) in both 32-bit and 64-bit. There is support for building them both statically-linked and dynamically-linked. > 2a.  If the answer to the above is no(which I suspect it is after cursory > examination), would the easiest option be to add a >        separate ROS install, get it to compile all the libraries as 32 > bit(with whatever the answer to #1 would be), then use >        that install to compile my package?  I don't have a ton of time to > modify the build structure to allow both libraries to >        exist at the moment, so I'm looking for a quick and easy solution. I don't fully understand your use case, but I suspect that the answer here is yes. brian.