Hello,

 

> export DYLD_LIBRARY_PATH=/usr/local/boost-1.76.0_gcc-11_libs/lib:$DYLD_LIBRARY_PATH
> and at runtime I get:
> dyld: Symbol not found: __ZN5boost15program_options3argB5cxx11E
>   Referenced from: /Users/stegra/Projects/VSCode/BoostCookbook/./Chapter01/01_A_program_options_base/main
>   Expected in: /usr/local/lib/libboost_program_options.dylib
>  in /Users/stegra/Projects/VSCode/BoostCookbook/./Chapter01/01_A_program_options_base/main

 

It seems, that libboost_program_options.dylib is piced from /usr/local/lib  instead of =/usr/local/boost-1.76.0_gcc-11_libs/lib.

 

Macos is different from linux in finding dynamic libraries. The most important difference is, that in macos, shared libraries usually are referred by absolute path. You can see this, when doing otool -l on an execuatable.

 

You can use install_name_tool to change the path of the shared objects referenced within an executable or shared object.

 

 

 

Klebsch Mario
Funktion | R&D

 

 

Tel: +49 (0) 531 38 701 718
Raum: Braunschweig, E20

 

Diese E-Mail und die an sie angehängten Dateien sind ausschließlich für Personen oder Institutionen bestimmt, deren Namen oben aufgeführt sind. Sie können Informationen enthalten, die durch das Berufsgeheimnis geschützt sind und deren Weitergabe strengstens untersagt ist. Jede elektronische Nachricht kann geändert werden. ACTIA lehnt jede Verantwortung für diese Nachricht ab. Der Inhalt dieser Nachricht stellt keine Verpflichtung seitens unseres Unternehmens dar. Wenn Sie kein Empfänger sind, weisen wir Sie darauf hin, dass das Lesen, Vervielfältigen oder Verteilen strengstens untersagt ist. Wir bitten Sie daher, uns umgehend über diesen Brief zu informieren und diese Nachricht sowie eventuell beigefügte Unterlagen aus Ihrem Postfach zu löschen. Danke.

This e-mail and the files attached to it are intended exclusively for persons or institutions whose names are listed above. They may contain information that is protected by professional secrecy and the disclosure of which is strictly prohibited. Any electronic message can be modified. ACTIA declines all responsibility for this message. The content of this message does not represent a commitment on the part of our company. If you are not a recipient, we would like to point out that reading, copying or distribution is strictly prohibited. We therefore ask you to inform us immediately about this letter and to delete this message and any accompanying documents from your mailbox. Thank you.