Depend trees can be influenced run-time (think 'eval "use Some::Weird::Module";'). What I find way more usefule that the already suggested modules is showing what is actually loaded, and from where, using Devel::TraceUse.
The chain can be a lot longer than you expect:
$ perl -d:TraceUse -MDBI -wle'my $dbh = DBI->connect ("dbi:CSV:")'
Modules used from -e:
1. DBI 1.616, -e line 0 [main]
2. Carp 1.17, DBI.pm line 159
3. strict 1.04, Carp.pm line 303
4. warnings 1.09, Carp.pm line 304
5. Exporter 5.64_01, Carp.pm line 11
11. Exporter::Heavy 5.64_01, Exporter.pm line 16
6. DynaLoader 1.10, DBI.pm line 160
7. Config, DynaLoader.pm line 25
9. Config_heavy.pl, Config.pm line 70
10. Config_git.pl, Config_heavy.pl line 1225 [Config]
8. AutoLoader 5.71, DynaLoader.pm line 22
12. Scalar::Util 1.23, DBI.pm line 290
13. vars 1.01, Scalar/Util.pm line 10
14. warnings::register 1.01, vars.pm line 7
15. List::Util 1.23, Scalar/Util.pm line 12
16. XSLoader 0.10, List/Util.pm line 26
17. DBD::CSV 0.31, DBI.pm line 777 (eval 3) [DBI::_firesafe]
18. Text::CSV_XS 0.81, DBD/CSV.pm line 54 [DBD::CSV::dr]
19. DBD::File 0.4, DBD/CSV.pm line 222 [DBD::CSV::Statement]
20. base 2.15, DBD/File.pm line 34
21. DBI::DBD::SqlEngine 0.03, base.pm line 91 (eval 5)
22. DBI::SQL::Nano 1.014600, DBI/DBD/SqlEngine.pm line 27
+ [base]
23. SQL::Statement 1.33, DBI/SQL/Nano.pm line 34
24. SQL::Parser 1.33, SQL/Statement.pm line 18
25. constant 1.20, SQL/Parser.pm line 17
26. Params::Util 1.03, SQL/Parser.pm line 19
27. overload 1.10, Params/Util.pm line 60
28. Clone 0.31, SQL/Statement.pm line 25
29. Errno 1.11, SQL/Statement.pm line 26
30. sort 2.01, SQL/Statement.pm line 1100
31. SQL::Eval 1.33, SQL/Statement.pm line 2187 [SQL::
+Statement::TempTable]
32. SQL::Statement::RAM 1.33, SQL/Statement.pm line 2
+0
33. SQL::Statement::TermFactory 1.33, SQL/Statement.p
+m line 21
34. Data::Dumper 2.128, SQL/Statement/TermFactory.p
+m line 11
35. bytes 1.04, Data/Dumper.pm line 683
36. SQL::Statement::Term 1.33, SQL/Statement/TermFa
+ctory.pm line 6
37. SQL::Statement::Operation 1.33, SQL/Statement/T
+ermFactory.pm line 7
38. SQL::Statement::Placeholder 1.33, SQL/Statement
+/TermFactory.pm line 8
39. SQL::Statement::Function 1.33, SQL/Statement/Te
+rmFactory.pm line 9
40. SQL::Statement::Functions 1.33, SQL/Statement
+/Function.pm line 58 [SQL::Statement::Function::UserFunc]
41. SQL::Statement::Util 1.33, SQL/Statement.pm line
+22
42. File::Spec 3.33, DBD/File.pm line 171 [DBD::File::db]
43. File::Spec::Unix 3.33, File/Spec.pm line 22
44. Cwd 3.33, DBD/File.pm line 172 [DBD::File::db]
45. Tie::Hash 1.03, DBD/File.pm line 503 [DBD::File::TieMeta]
46. IO::File 1.14, DBD/File.pm line 741 [DBD::File::Table]
47. Symbol 1.07, IO/File.pm line 131
48. SelectSaver 1.02, IO/File.pm line 132
49. IO::Seekable 1.1, IO/File.pm line 133
50. IO::Handle 1.28, IO/Seekable.pm line 101
51. IO 1.25_02, IO/Handle.pm line 266
52. Fcntl 1.06, IO/Seekable.pm line 104
53. File::Basename 2.78, DBD/File.pm line 742 [DBD::File::Tab
+le]
Enjoy, Have FUN! H.Merijn
|