In principle, I'd have thought that this was possible, if where binaries need to be run in the creation process the inputs/outputs are compatible between the architectures and the mappings between which binaries to use are properly managed.
however, it doesn't seem to work:
setarch x86_64 livecd-creator -c whatever.ks
simply returns: setarch: x86_64: Unrecognized architecture
I'm using f15, util-linux-2.19.1-1.4.fc15.i686 (for setarch). livecd-tools-15.7-1.fc15.i686
(I'm assuming that using setarch is the right approach to use, otherwise, livecd-creator just builds for the architecture that it's run on .
Tim
On 10/14/2011 01:33 PM, Tim Coote wrote:
In principle, I'd have thought that this was possible, if where binaries need to be run in the creation process the inputs/outputs are compatible between the architectures and the mappings between which binaries to use are properly managed.
The binaries are compatible, but only in the opposite direction, so you can (mostly) run 32 bit binaries on 64 bit.
however, it doesn't seem to work:
setarch x86_64 livecd-creator -c whatever.ks
simply returns: setarch: x86_64: Unrecognized architecture
You can use "setarch i686" on x86_64 to build 32 bit images - not the other way around.
/Mads
On 14 Oct 2011, at 13:22, Mads Kiilerich wrote:
On 10/14/2011 01:33 PM, Tim Coote wrote:
In principle, I'd have thought that this was possible, if where binaries need to be run in the creation process the inputs/outputs are compatible between the architectures and the mappings between which binaries to use are properly managed.
The binaries are compatible, but only in the opposite direction, so you can (mostly) run 32 bit binaries on 64 bit.
Are the inputs/outputs of the binaries compatible - I think that's all that's needed. Clearly this could be a bit of a can of worms as arbitrary binaries can be run from the kickstart. However, I just want to build minimal O/S and then use puppet to configure the devices.
however, it doesn't seem to work:
setarch x86_64 livecd-creator -c whatever.ks
simply returns: setarch: x86_64: Unrecognized architecture
You can use "setarch i686" on x86_64 to build 32 bit images - not the other way around.
That's great. But not much use to me. Clearly, it's not a capability that's going to come soon. At least I know where I stand.
/Mads
Tim
On 10/14/2011 02:34 PM, Tim Coote wrote:
On 14 Oct 2011, at 13:22, Mads Kiilerich wrote:
On 10/14/2011 01:33 PM, Tim Coote wrote:
In principle, I'd have thought that this was possible, if where binaries need to be run in the creation process the inputs/outputs are compatible between the architectures and the mappings between which binaries to use are properly managed.
The binaries are compatible, but only in the opposite direction, so you can (mostly) run 32 bit binaries on 64 bit.
Are the inputs/outputs of the binaries compatible - I think that's all that's needed. Clearly this could be a bit of a can of worms as arbitrary binaries can be run from the kickstart. However, I just want to build minimal O/S and then use puppet to configure the devices.
???
A part of installing a package (in a chroot) might be to run binaries (found in the chroot). It might be possible to fix it up by running 32 bit binaries somehow, but I doubt that is feasible.
You can use "setarch i686" on x86_64 to build 32 bit images - not the other way around.
That's great. But not much use to me. Clearly, it's not a capability that's going to come soon. At least I know where I stand.
"come soon"? 64 bit binaries requires a 64 bit kernel which requires a 64 bit cpu (or an emulator running on 32 bit). You can do that now if you really want to. With 32 bit being so "last century" I doubt there will ever by any changes in this area.
/Mads
On 14 Oct 2011, at 13:57, Mads Kiilerich wrote:
???
A part of installing a package (in a chroot) might be to run binaries (found in the chroot). It might be possible to fix it up by running 32 bit binaries somehow, but I doubt that is feasible.
I've not looked at the code, but my sense is that I'm not being clear. If one of the binaries to run to generate the files that go into the iso, were, say gcc, then the inputs for gcc on 32bit and 64 bit are the same, as are the outputs. I could even write the C code so that it ran on either h/w architecture (or ARM, or whatever).
You can use "setarch i686" on x86_64 to build 32 bit images - not the other way around.
That's great. But not much use to me. Clearly, it's not a capability that's going to come soon. At least I know where I stand.
"come soon"? 64 bit binaries requires a 64 bit kernel which requires a 64 bit cpu (or an emulator running on 32 bit). You can do that now if you really want to. With 32 bit being so "last century" I doubt there will ever by any changes in this area.
/Mads
For me, the issue is that I've got a 32 bit machine that I want to build binaries on and which I don't want to take out of action while I move it to 64bit. More generally, I don't see why I'd not want to use livecd-creator on intel architecture to create a boot iso for any arbitrary target (eg a phone, based on ARM). Surely it makes no sense to have to have an ARM box to build an ARM livecd any more than I need a 64 bit intel machine to produce a 64 bit intel binary.
Tim
livecd@lists.fedoraproject.org