To be posix compliant, the path name is not to be encoded into the archive. While I was able to create an archive
ar crv foo.a A/a.o B/a.o and the symbols from both object appeared, this doesn't seem to be very safe. Especially since doing this: ar crv foo.a A/a.o ar crv foo.a B/a.o will result in an archive with only the symbols from B/a.o. There is a non-posix compliant extension to gnu ar, but it seems to be fraught with peril. >From the ar manpage: P Use the full path name when matching names in the archive. GNU ar can not create an archive with a full path name (such archives are not POSIX complaint), but other archive creators can. This option will cause GNU ar to match file names using a complete path name, which can be convenient when extracting a single file from an archive created by another tool. Juan Sanchez wrote: > Hello Brandon, > > How do you create the final archive without the ar command? > > Juan > > Brandon Van Every wrote: >> On 9/18/07, Juan Sanchez <[EMAIL PROTECTED]> wrote: >>> Even with Brandon's solution, I don't think ar let you add multiple .o >>> files of the same name in the archive. >> I'm going to guess you meant, "Even with Brandon's solution that >> doesn't use AR, you can't add multiple .o files of the same name to a >> library." I'm not sure about that. When I pass CMake objects to a >> library, I provide qualified pathnames, so I don't know if the name of >> the object file matters. You can't have multiple function >> definitions, but that's about the code, not the object files. I've >> not had to deal with this issue myself. You'd need to try my way and >> see what happens. >> >> >> Cheers, >> Brandon Van Every >> _______________________________________________ >> CMake mailing list >> CMake@cmake.org >> http://www.cmake.org/mailman/listinfo/cmake >> >> > > _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake