Who knows how to build 32 rpm from a 64 bit program? I try rpmbuild -bb --target i686 , in g ++ it is passed RPM_OPT_FLAGS=-O2 -g -march=i686 , to which he says:

error: The specified processor does not support the x86-64 command set.

For a normal build under 32 bits, you must also pass -m32. The question is where to stick -m32, so as not to violate the logic or how to make it add itself?

  • I understand that there are 64-bit binaries that need to be assembled into an rpm-package, signed as 32-bit? If so, then this is a bad idea. If you need to build a 32-bit model on a 64-bit system, then you probably have a script, on the basis of which rpmbuild compiles and builds a package. There and look. There you need to specify the flag somewhere -m32 - skegg
  • Not so, there is a source code of the program which needs to be collected in rpm. For 64 bits it was assembled perfectly, but for 32 it does not want to assemble yet. In the help, they write that there seems to be enough option - target i686, but it is not enough. I will try to dig more, I can find where -m32 is added, because this flag should be passed to g ++ for anybody under 32 bits. - mikelsv