:orphan: # PetscDLLibrarySym Load a symbol from a list of dynamic link libraries. ## Synopsis ``` PetscErrorCode PetscDLLibrarySym(MPI_Comm comm, PetscDLLibrary *outlist, const char path[], const char insymbol[], void **value) ``` Collective ## Input Parameters - ***comm -*** the MPI communicator that will load the symbol - ***outlist -*** list of already open libraries that may contain symbol (can be `NULL` and only the executable is searched for the function) - ***path -*** optional complete library name (if provided it checks here before checking `outlist`) - ***insymbol -*** name of symbol ## Output Parameter - ***value -*** if symbol not found then this value is set to `NULL` ## Notes Symbol can be of the form [/path/libname[.so.1.0]:]functionname[()] where items in [] denote optional It will attempt to (retrieve and) open the library if it is not yet been opened. ## See Also `PetscDLLibrary`, `PetscLoadDynamicLibrary()`, `PetscDLLibraryAppend()`, `PetscDLLibraryRetrieve()`, `PetscDLLibraryOpen()`, `PetscDLLibraryClose()` ## Level developer ## Location src/sys/dll/dl.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/sys/dll/dl.c) [Index of all Sys routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)