1

I'm trying to get boost fiber up and running on os x, and I'm having quite a few issues. First, fiber won't compile with Apple clang because of the use of thread_local which Apple does not support (according to what I found online, they think they can implement it better than standard llvm and don't want to introduce it only to break ABI later).

So instead, I tried using gcc-5 installed through homebrew. After a bit of screwing around with boost build I managed to get fiber to build, and I can link sample programs successfully, but they seg fault.

Then I figured I'd give current llvm a try, since it has thread_local support, and I can again get boost fiber to build fine, but now I'm getting issues because the os x linker doesn't seem to handle thread local properly either! I would post the exact error, but my power is out. I did actually get it to link though with a couple changes to fiber, but the sample program failed again.

So the question is, how can I make this happen? Is there any way to get another linker working to produce os x executables for me? Llvm comes with another linker called lld, but I don't think it does what I'm after.

I think if I absolutely had to, I could go through fiber and boost context replacing all thread_local with boost::thread_specific_ptr, but I'm not sure how deep that rabbit hole goes. Any suggestions?

usr1234567
  • 21,601
  • 16
  • 108
  • 128
pat
  • 763
  • 4
  • 12
  • 1
    no code? no debugging, backtraces; no link to [Boost Fiber](https://github.com/olk/boost-fiber) even? Seems you're betting on someone doing the exact same thing and being psychic about what you're doing "wrong", specifically – sehe Jun 02 '15 at 00:21
  • As I said, my power went out. I will update the question when I have access to my computer. Until then I was hoping for some helpful suggestions.... – pat Jun 02 '15 at 00:23

0 Answers0