Asumiendo que SQLite está enlazado dinámicamente en la aplicación que se está ejecutando, puedes encontrar el PATH
utilizando la variable de entorno ps
comando.
Como alternativa, utilice Monitor de actividad para ver la aplicación Archivos y puertos abiertos . A continuación, puede buscar en la salida para ver si la biblioteca se mantiene abierta por el proceso.
Ruta - Uso ps
PATH
forma parte de las variables de entorno de un proceso. Si puede verlas, encontrará PATH
.
Utilice el ps
herramienta con las banderas -wwwE
en MacOS para ver las variables de entorno pasadas a un proceso:
ps -p <PID> -wwwE
Ver ¿Variables de entorno de un proceso en ejecución en Unix?
Ejemplo
A continuación se muestra un ejemplo de salida de la ejecución de este comando en la aplicación gráfica de Mac Xcode:
ps -p 1648 -wwwE
PID TTY TIME CMD
1648 ?? 0:03.46 /Applications/Xcode.app/Contents/MacOS/Xcode TMPDIR=/var/folders/b2/[redacted]n/T/ __CF_USER_TEXT_ENCODING=0x1F5:0x0:0x2 HOME=[redacted] SHELL=/bin/bash Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.[redacted]/Render SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.[redacted]/Listeners PATH=/usr/bin:/bin:/usr/sbin:/sbin LOGNAME=[redacted] DISPLAY=/private/tmp/com.apple.launchd.[redacted]/org.macosforge.xquartz:0 XPC_SERVICE_NAME=com.apple.dt.Xcode.64852 MallocNanoZone=0 USER=[redacted] XPC_FLAGS=0x1
Como menciona Mark en un comentario más abajo, esto puede no mostrar la biblioteca vinculada.
Información de la Biblioteca Vinculada - Uso otool
Como otra alternativa, intente otool
para extraer la información de la estructura y la biblioteca vinculada. El comando a ejecutar es:
otool -L <path to binary>
Usando Xcode.app como ejemplo, el comando y la salida son:
$ otool -L /Applications/Xcode.app/Contents/MacOS/Xcode
/Applications/Xcode.app/Contents/MacOS/Xcode:
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 22.0.0)
@rpath/DVTFoundation.framework/Versions/A/DVTFoundation (compatibility version 1.0.0, current version 1.0.0)
@rpath/DVTKit.framework/Versions/A/DVTKit (compatibility version 1.0.0, current version 1.0.0)
@rpath/IDEFoundation.framework/Versions/A/IDEFoundation (compatibility version 1.0.0, current version 14154.0.0)
@rpath/IDEKit.framework/Versions/A/IDEKit (compatibility version 1.0.0, current version 14154.0.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1452.20.0)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.50.4)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1561.40.104)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1452.20.0)
@rpath/libswiftAVFoundation.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftCore.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftCoreAudio.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftCoreFoundation.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftCoreGraphics.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftCoreImage.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftCoreMedia.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftDarwin.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftDispatch.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftFoundation.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftIOKit.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftMetal.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftObjectiveC.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftQuartzCore.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftXPC.dylib (compatibility version 1.0.0, current version 902.0.48)
@rpath/libswiftsimd.dylib (compatibility version 1.0.0, current version 902.0.48)
Reenlace
Reenlazar un binario no es aconsejable pero parece posible. Véase Cómo copiar (y revincular) binarios en OSX utilizando otool e install_name_tool para obtener instrucciones detalladas.
0 votos
Algunas aplicaciones y frameworks proporcionan y utilizan su propio binario sqlite (por ejemplo, Onyx o Mono).
0 votos
Usted necesita saber cómo se construyó la aplicación - buenas aplicaciones tendrán la biblioteca sqlite en su paquete o estáticamente vinculado ot que va a utilizar la definida en su construcción o si originalmente escrito para otro Unix el LD_LIBRARY_PATH podría ser utilizado - aunque las versiones posteriores de OSX hacer que sea más difícil de hacer developer.apple.com/library/content/documentation/ En resumen, pregunte al promotor