Alternatives for outdated assembler (AS)?

Jeffrey Walton noloader at gmail.com
Thu Apr 9 13:24:32 PDT 2015


I'm trying to compile Crypto++ on OSX *with* ASM enabled. By default,
Crpyto++ disabled ASM because of Apple's outdated assembler. The
problem occurs with both Command Line Tools and Xcode (a sample of the
errors is shown below).

I installed the Binutils package, but it does not come with an updated
assembler.

What are the options for using an updated assembler on OS X?

Thanks in advance.

**********

$ export CXX=/Applications/Xcode.app/Contents/Developer//Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
$ export AS=/Applications/Xcode.app/Contents/Developer//Toolchains/XcodeDefault.xctoolchain/usr/bin/as
$ cd cryptopp
$ make static
/Applications/Xcode.app/Contents/Developer//Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
-DNDEBUG -g3 -Os -fPIC -stdlib=libc++ -Wall -Wno-tautological-compare
-Wno-unused-value -Wno-unused-variable -Wno-unused-parameter
-Wno-unused-function -pipe -c gcm.cpp
gcm.cpp:337:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4731)  // frame pointer register 'ebp' modifie...
        ^
gcm.cpp:746:3: error: invalid instruction mnemonic 'prefix'
                ASL(1)
                ^
./cpu.h:224:17: note: expanded from macro 'ASL'
        #define ASL(x) GNU_ASL(x)
                       ^
./cpu.h:218:26: note: expanded from macro 'GNU_ASL'
        #define GNU_ASL(x) "\n" #x ":"
                                ^
<scratch space>:29:2: note: expanded from here
"1"
 ^
<inline asm>:2:1467: note: instantiated into assembly here
  ...rcx, 16;sub rdx, 1;jnz 1b;movdqa [rsi], xmm0;.att_syntax prefix;
                                                              ^~~~~~~


More information about the macports-users mailing list