+ cross_check_errors = []
+
+ if not hasattr(sys, 'frozen'):
+ import pkg_resources
+ from _auto_deps import install_requires
+
+ pkg_resources_vers_and_locs = dict([(p.project_name.lower(), (str(p.version), p.location))
+ for p in pkg_resources.require(install_requires)])
+
+ imported_packages = set([p.lower() for (p, _) in packages])
+ extra_packages = []
+
+ for pr_name, (pr_ver, pr_loc) in pkg_resources_vers_and_locs.iteritems():
+ if pr_name not in imported_packages and pr_name not in ignorable:
+ extra_packages.append( (pr_name, (pr_ver, pr_loc, "according to pkg_resources")) )
+
+ cross_check_errors = cross_check(pkg_resources_vers_and_locs, packages)
+ packages += extra_packages
+
+ return packages, cross_check_errors