I’m trying to create an FHS User env for a program that seems to require both 64-bit and 32-bit gcc versions. The general advice to make this run on other linux distros seems to be to install gcc-multilib, but this isn’t a Nix package and hence I’ve been looking at other approaches. There’s some information here about this:
But that seems geared towards creating derivations rather than FHS environments. There also seems to be an --enable-multilib parameter for gcc. This sounds promising, but I’ve tried it in what I think should be a MWE:
And it doesn’t work; it tells me configure: error: in `/build/build/x86_64-unknown-linux-gnu/32/libgcc': configure: error: C preprocessor "/lib/cpp" fails sanity check
Can anyone guide me towards the correct approach here?
Thanks - I hadn’t tried it, but I now have and it gets me further along. However, I then get a new error message: GNU binutils package not found, please install GNU binutils for your Linux distribution
However, if I simply add binutils to the list of packages in the FHS environment, then this seems to take me a step back - the program then starts asking for ctr1.o, which was the original problem that was solved with gccMultiStdenv. Do I also need a 32-bit version of the binutils package?
Possibly not. I’ve been trying the least-effort approach by following some existing guidance:
The software in question (xilinx vivado) is known to be a little clunky and may not necessarily be (eg) respecting environment variables where it should be.
Would you suggest trying to build a derivation instead?