2007/2/25, Sam Varshavchik <<a href="mailto:mrsam@courier-mta.com">mrsam@courier-mta.com</a>>:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Philippe A. writes:<br><br>> « HTML content follows »<br>> I have installed FC6 x86_64 on my new system. I would like to know how I<br>> can compile a 32 bit freetype package. The following didn't work:<br>>
<br>> rpmbuild -bb freetype.spec -bb --target i386<br>><br>> It fails with these errors:<br>><br>> checking build system type... x86_64-redhat-linux-gnu<br>> checking host system type... x86_64-redhat-linux-gnu
<br>> checking target system type... i386-redhat-linux-gnu<br><br>I do not believe that rpm's stock configuration supports cross-building to a<br>different architecture.  The --target parameter only sets the architecture
<br>label on the resulting rpms, and not much more.<br><br>Cross-compilation is not trivial to set up.  You must install, beforehand,<br>the i386 build of every library that your software compiles against, and you<br>must know, beforehand, what they are.  Then, you'll need to arrange,
<br>somehow, for the software's configuration script and makefile pass the -m32<br>option to gcc.<br><br>It's rather unlikely that freetype's rpm and configure script implements all<br>of this.</blockquote><div>
<br>Well when you install FC x86_64 you get all these 32 bit libs installed. If you rpm -qa you get a lot of lib packages in double. One is 32 bit, one is 64 bit.<br><br>rpm -qa --queryformat "%{name}-%{version}-%{release}.%{arch}\n"
<br><br>zlib-1.2.3-3.i386<br>zlib-1.2.3-3.x86_64<br><br>So that obviously mean they have been compiled. Since I cannot find a separate SRPM for 32 bit and 64 bit, I have to assume the same was used. <br><br>I have found extra bits information here:
<br><br><a href="http://www.redhat.com/magazine/009jul05/features/multilib/">http://www.redhat.com/magazine/009jul05/features/multilib/</a><br><br>It's a nice article but not nearly technical.<br><br>Someone suggested the following to me. That didn't work.
<br><br>setarch i386 rpmbuild -bb --target i386 freetype.spec<br><br>I don't see how mock can help solve this issue. It seems to be oriented towards spec file verification.<br><br><a href="http://fedoraproject.org/wiki/Extras/MockTricks">
http://fedoraproject.org/wiki/Extras/MockTricks</a><br><br>I keep looking. If anyone else got a suggestion, thanks for letting me know!<br><br>If you think about it, it would be insane to package a distro with different sets of rpms. So there has to be a solution that's not so crazy. Maybe recompiling gcc? I seem to have seen some hints to that effect but haven't investigated further yet.
<br></div></div>