1

Mac version: Mac Sierra Version 10.12.5 gcc version: 4.8.5

The error message shown when compiling C++ code in terminal is as below: dyld: lazy symbol binding failed: Symbol not found: __ZNSt8__detail15_List_node_base7_M_hookEPS0_
Referenced from: /Users/tina/Documents/pimsa-master/samples/endophenotype/../../analyzer (which was built for Mac OS X 10.12)
Expected in: /usr/lib/libstdc++.6.dylib

Tina
  • 31
  • 4
  • Does this one answer your question? https://stackoverflow.com/questions/15541706/handling-dyld-lazy-symbol-binding-failed-symbol-not-found-error-when-nm-does – R891 May 27 '17 at 01:19
  • I tried the last solution, but install_name_tool -change /usr/lib/libstdc++.6.dylib '@executable_path/libstdc++.6.dylib', this line does not generate the dylib I need. Plus, I do not know how to distribute it to the application since I am too new to C++ (this is not an app). – Tina May 27 '17 at 05:06
  • Just tried it with help from others, unfortunately it did not work. – Tina May 28 '17 at 00:14

1 Answers1

1

Thanks for the help, one of my friends helped me to figure it out. There are two gcc (g++) on my computer, one is installed with anaconda, the other one is in the required location. Since I accidentally set anaconda in front of the other location in the bashfile, it did not work. Now it is fixed by placing the required location in front of anaconda in the bashfile.

Tina
  • 31
  • 4