Pagina1 van 1
Forum

Welkom bij de Tweaking4All gemeenschapsforums!
Voor je gaat deelnemen, bekijk de Forum Regels!

Specifieke onderwerpen: Start het onderwerp met de naam van het programma of systeem.
Bijvoorbeeld “MacOS X – Jouw vraag“, of bijvoorbeeld “MS Word – Jouw Tip of Truc“.

Merk op: Omschakelen naar een andere taal zal niet werken als je een post aan het lezen bent aangezien er waarschijnlijk geen vertaling beschikbaar is.





Share:
Notifications
Clear all

macOS - Waar plaats je dylib bestanden tijdens software ontwikkeling?  

  RSS

 Hans
(@hans)
Prominent Member Admin
Lid geworden: 7 jaar geleden
Berichten: 843
26 mei 2020 13:13  

Van de Apple documentation:

Voor je een dynamic library kunt gebruiken, moeten de library (dylib) en de headers op jouw computer geplaatst worden.

De standaard locaties voor header files zijn (niet altijd nodig):

~/include
/usr/local/include
/usr/include

De standard locaties voor dynamic libraries (dylib files) zijn:

~/lib
/usr/local/lib
/usr/lib.

Je kunt .dylib bestanden ook op niet-standaard locaties zetten maar dan moet je het betreffende pad wel toevoegen aan een van deze environment variabelen:

LD_LIBRARY_PATH
DYLD_LIBRARY_PATH
DYLD_FALLBACK_LIBRARY_PATH

 

In het kort, is dit wat ik doe als ik een programma ontwikkel wat een dylib gebruikt:

1) Voor het software ontwikkel proces kopieer ik de dylib bestanden naar ~/lib - Op die manier kan mijn. IDE (Lazarus Pascal) de dylib vinden.

2) Voor het testen voor ik een applicatie gaat distribueren, verwijder ik de dylibs weer van ~/lib, op die manier kan ik testen of ik de dylib correct in de .app bundel heb geplaatst.

Ik maak hiervoor vaak 2 scripts (MySQL client dylib voorbeeld): 

install-dylib.sh

mkdir ~/lib
cp libmysqlclient.20.dylib ~/lib
cd ~/lib
ln -s libmysqlclient.20.dylib libmysqlclient.dylib

en

uninstall-dylib.sh

rm ~/lib/libmysqlclient.dylib
rm ~/lib/libmysqlclient.20.dylib

Vergeet ze niet uitvoerbaar te maken met:

chmod +x install-dylib.sh
chmod +x uninstall-dylib.sh

Merk op: in het script maak ik ook een symbolic link naar een generieke naam voor de dylib (zonder versienummer).


ReageerCitaat
Share: