TBB make error when upgrading to CmdStan-2.22.1

Hi guys, I am trying to upgrade from CmdStan-2.17.1 to CmdStan-2.22.1. I managed to compile the model in Windows, but in Linux I came across these error messages:

/tmp/ccyeCYds.s: Assembler messages:
/tmp/ccyeCYds.s:20: Error: no such instruction: xend' /tmp/ccyeCYds.s:135: Error: no such instruction: xbegin .L18’
/tmp/ccyeCYds.s:184: Error: no such instruction: xabort $255' /tmp/ccyeCYds.s:270: Error: no such instruction: xbegin .L39’
/tmp/ccyeCYds.s:321: Error: no such instruction: `xabort $255’

  • Operating System: CentOS release 6.6 (Final)
  • CmdStan Version: 2.22.1
  • Compiler/Toolkit: gcc (GCC) 5.2.0
  • Make version: GNU Make 3.81

While googling for something similar I came across this answer, related to TBB usage in some other library:

  • The problem here is that, though your version of GCC is new enough, your system has an old assembler, that is not capable of outputting the instructions that TBB wishes to employ

I am not sure how to resolve this, any ideas? Can I pass some flags to workaround this?

Thank you

No…you have to solve this since the tbb is a must.

Hopefully google helps you in finding a solution.

Maybe installing a newer compiler is the easiest route for you on centos.

Otherwise…can u reproduce the issue in a docker container?

2 Likes

Thank you for fast replay.
I managed to resolve this: I cannot install on this particular machine with sudo commands, but I managed to use the PATH variable to point to a newer bitunits, and it passed, after doing something like this

export PATH="/depot/binutils-2.30/bin:/depot/make-3.81/bin:$PATH"
make build
Everything went fine. Thank you

1 Like

I ran into this as well. The suggested solution of a fresh install of binutils solved it.