Suponiendo que SQLite está vinculado dinámicamente a la aplicación en ejecución, puede encontrar la variable de entorno PATH
usando el comando ps
.
También puede utilizar Monitor de actividad para ver los Archivos y puertos abiertos de la aplicación. Luego puede buscar en la salida para ver si la biblioteca se mantiene abierta por el proceso.
Ruta - Use ps
PATH
es parte de las variables de entorno de un proceso. Si puedes verlos, encontrarás PATH
.
Use la herramienta ps
con las marcas -wwwE
en macOS para ver las variables de entorno pasadas a un proceso:
ps -p <PID> -wwwE
Consulte ¿Variables de entorno de un proceso en ejecución en Unix?
Ejemplo
A continuación se muestra un ejemplo de resultado 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 Mark menciona en un comentario a continuación, es posible que esto no muestre la biblioteca vinculada.
Información de la biblioteca vinculada: use otool
Como otra alternativa, intente otool
para extraer el marco vinculado y la información de la biblioteca. El comando para 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)
Volver a vincular
No es recomendable volver a vincular un binario, pero parece posible. Vea Cómo copiar (y volver a vincular) los binarios en OSX usando otool e install_name_tool para obtener instrucciones detalladas.