You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to get the OpenEXR Python bindings to work in my Python environment on OSX. I've tried an approach using Macports and pip, but that didn't work (see #207) so I'm trying to build OpenEXR from source.
As far as I can tell, IlmBase builds correctly. But when I try to build OpenEXR, I get many similar no such instruction errors:
...
ImfDwaCompressorSimd.h:483:no such instruction: `vmovaps (%rsi), %ymm0'
ImfDwaCompressorSimd.h:484:no such instruction: `vmovaps 0x20(%rsi), %ymm1'
ImfDwaCompressorSimd.h:485:no such instruction: `vmovaps 0x40(%rsi), %ymm2'
ImfDwaCompressorSimd.h:486:no such instruction: `vmovaps 0x60(%rsi), %ymm3'
ImfDwaCompressorSimd.h:487:no such instruction: `vcvtps2ph $0, %ymm0,%xmm0'
ImfDwaCompressorSimd.h:488:no such instruction: `vcvtps2ph $0, %ymm1,%xmm1'
ImfDwaCompressorSimd.h:489:no such instruction: `vcvtps2ph $0, %ymm2,%xmm2'
ImfDwaCompressorSimd.h:490:no such instruction: `vcvtps2ph $0, %ymm3,%xmm3'
ImfDwaCompressorSimd.h:491:no such instruction: `vmovdqa %xmm0, 0x00(%rdi)'
ImfDwaCompressorSimd.h:492:no such instruction: `vmovdqa %xmm1, 0x10(%rdi)'
ImfDwaCompressorSimd.h:493:no such instruction: `vmovdqa %xmm2, 0x20(%rdi)'
ImfDwaCompressorSimd.h:494:no such instruction: `vmovdqa %xmm3, 0x30(%rdi)'
ImfDwaCompressorSimd.h:495:no such instruction: `vmovaps 0x80(%rsi), %ymm0'
ImfDwaCompressorSimd.h:496:no such instruction: `vmovaps 0xa0(%rsi), %ymm1'
ImfDwaCompressorSimd.h:497:no such instruction: `vmovaps 0xc0(%rsi), %ymm2'
ImfDwaCompressorSimd.h:498:no such instruction: `vmovaps 0xe0(%rsi), %ymm3'
ImfDwaCompressorSimd.h:499:no such instruction: `vcvtps2ph $0, %ymm0,%xmm0'
ImfDwaCompressorSimd.h:500:no such instruction: `vcvtps2ph $0, %ymm1,%xmm1'
ImfDwaCompressorSimd.h:501:no such instruction: `vcvtps2ph $0, %ymm2,%xmm2'
ImfDwaCompressorSimd.h:502:no such instruction: `vcvtps2ph $0, %ymm3,%xmm3'
ImfDwaCompressorSimd.h:503:no such instruction: `vmovdqa %xmm0, 0x40(%rdi)'
ImfDwaCompressorSimd.h:504:no such instruction: `vmovdqa %xmm1, 0x50(%rdi)'
ImfDwaCompressorSimd.h:505:no such instruction: `vmovdqa %xmm2, 0x60(%rdi)'
ImfDwaCompressorSimd.h:506:no such instruction: `vmovdqa %xmm3, 0x70(%rdi)'
ImfDwaCompressorSimd.h:507:no such instruction: `vzeroupper'
...
make[2]: *** [ImfDwaCompressor.lo] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1
Ah, @meshula, thanks for the pro tip. Using cmake, instead of the make files that ship with OpenEXR, worked out of the box on the first try. I didn't even need to set any custom environment variables, like they do in the script you posted. I only needed to set ILMBASE_PACKAGE_PREFIX=/usr/local when building OpenEXR, because /usr/local is where cmake installed IlmBase by default.
I guess the solution is to use cmake when trying to build OpenEXR on OSX, rather than the standard make files. I'll leave this issue open so that the OSX documentation might get updated to reflect this potential gotcha.
Looking into the backlog of open OpenEXR issues. This seems to have been resolved.
Closing the issue for now, feel free to re-open or file a new issue if you need further help.
Hello there,
I'm trying to get the OpenEXR Python bindings to work in my Python environment on OSX. I've tried an approach using Macports and pip, but that didn't work (see #207) so I'm trying to build OpenEXR from source.
As far as I can tell, IlmBase builds correctly. But when I try to build OpenEXR, I get many similar
no such instruction
errors:Here is my g++ version information.
What is the recommended way to build OpenEXR on OSX?
The text was updated successfully, but these errors were encountered: