Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.
1064 Discussions

Self-compiled GCC available for download doesn't recognize -fmpx flag



I compiled the sources of GCC 4.7.2 available for download here at this Intel page. I can perfectly run the compiler, however it doesn't seem to understand the -fmpx flag: it throws me an "unrecognized command line option" error.

The build was configured with --enable-mpx as described in this GCC wiki, but that article seems to be outdated - the code there is apparently broken with a libc++ incompatibility (I'm on OS X Mavericks and this is currently the system's default C++ library, which replaced libstdc++).

Could anyone please point to me what I am missing?

Thank you, Leandro

ps: In the case it's useful, here is my configure call: configured by ../gcc-4.7.2/configure, generated by GNU Autoconf 2.64,
  with options \" '--enable-mpx' '--enable-language=c,c++' '--enable-interwork' '--target=x86_64-apple-darwin13' '--host=x86_64-apple-darwin13' '--build=x86_64-apple-darwin13' 'build_alias=x86_64-apple-darwin13' 'host_alias=x86_64-apple-darwin13' 'target_alias=x86_64-apple-darwin13' \" . Is this expected to work with Mach-O?

0 Kudos
2 Replies

I later realized that the correct sources should have been gcc-sources.tar.gz. However, that didn't help me either. In fact, I took a quick look at this but could find no apparently complete MPX implementation. Actually, there are no mpx (what gets passed by the driver through -fmpx) flag available in gcc/config/i386/i386.opt, where I would expect it to be.

Has anyone succeeded compile those sources available for download? I would really appreciate if someone could shed a light into this...

Thank you.



Currently we support MPX in GCC for Linux only. Also I advise to not use old sources/binaries because we don’t support them anymore. You don't need to pass --enable-mpx with the current version to get MPX support in the compiler.  There is also no -fmpx anymore. GCC Wiki page you mentioned is actually up-to-date and have proper sources link and flags description.