🌻 📖 whichdll


whichdll - Find dynamic libraries in the appropriate path


version 0.04


 $ whichdll xml2
 $ whichdll -a xml2  # print all matches
 $ whichdll -a \*    # print all DLLs
 $ whichdll -s xml2  # silent mode


whichdll is a command line interface to FFI::CheckLib. It can be helpful in determining the location of dynamic libraries installed on your system. Its primary purpose is to be used in debugging issues related to FFI::CheckLib, or FFI::Platypus. The command takes one or more arguments, which are treated as library names. The whichdll script will find the platform specific names in the appropriate places if they can be found in the system path. Thus when you search for foo you will get a result like libfoo.so.1.2.3 on Linux, foo.dll on Windows, libfoo.dylib or foo.bundle on OS X, cygfoo-1.0.dll on Cygwin, etc., with the appropriate full path.

By default duplicates due to duplicate paths or symlinks will be removed. You can see them using the -x option. For example on Debian:

 $ ./bin/whichdll -a xml2
 $ ./bin/whichdll -a -x xml2
 /usr/lib/x86_64-linux-gnu/libxml2.so => /usr/lib/x86_64-linux-gnu/libxml2.so.2.9.4
 /usr/lib/x86_64-linux-gnu/libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2.9.4

You can use the wildcard * to print all libraries. This implies the -a option.



Print all matches instead of just the first one.

--alien Alien::Name

Include Perl Alien in search, if available


No output, just return 0 if any of the DLLs are found, or 1 if none are found.


Prints version and copyright notice and exits.


Do not prune duplicates.


Graham Ollis <plicease@cpan.org>


This software is copyright (c) 2018-2022 by Graham Ollis.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.