xmendez / wfuzz

Web application fuzzer
http://wfuzz.io
GNU General Public License v2.0
5.94k stars 1.39k forks source link

wfuzz not install on mac(arm64) #350

Open admiralhr99 opened 1 year ago

admiralhr99 commented 1 year ago

hey. i want to install wfuzz on my virtual ubuntu(utm) on my mac m1 cpu and get this error first i tried to install it with pip and i got this error

Defaulting to user installation because normal site-packages is not writeable
Collecting wfuzz
  Using cached wfuzz-3.1.0-py3-none-any.whl (148 kB)
Requirement already satisfied: chardet in /usr/lib/python3/dist-packages (from wfuzz) (4.0.0)
Collecting pycurl
  Using cached pycurl-7.45.2.tar.gz (234 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  \u00d7 python setup.py egg_info did not run successfully.
  \u2502 exit code: 1
  \u2570\u2500> [23 lines of output]
      Traceback (most recent call last):
        File "/tmp/pip-install-_kjludgv/pycurl_e979be9eb60747d894fda542126d4bbb/setup.py", line 229, in configure_unix
          p = subprocess.Popen((self.curl_config(), '--version'),
        File "/usr/lib/python3.10/subprocess.py", line 969, in __init__
          self._execute_child(args, executable, preexec_fn, close_fds,
        File "/usr/lib/python3.10/subprocess.py", line 1845, in _execute_child
          raise child_exception_type(errno_num, err_msg, err_filename)
      FileNotFoundError: [Errno 2] No such file or directory: 'curl-config'

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-_kjludgv/pycurl_e979be9eb60747d894fda542126d4bbb/setup.py", line 970, in <module>
          ext = get_extension(sys.argv, split_extension_source=split_extension_source)
        File "/tmp/pip-install-_kjludgv/pycurl_e979be9eb60747d894fda542126d4bbb/setup.py", line 634, in get_extension
          ext_config = ExtensionConfiguration(argv)
        File "/tmp/pip-install-_kjludgv/pycurl_e979be9eb60747d894fda542126d4bbb/setup.py", line 93, in __init__
          self.configure()
        File "/tmp/pip-install-_kjludgv/pycurl_e979be9eb60747d894fda542126d4bbb/setup.py", line 234, in configure_unix
          raise ConfigurationError(msg)
      __main__.ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory: 'curl-config'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

\u00d7 Encountered error while generating package metadata.
\u2570\u2500> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

then i installed it with apt and after run it i got this error

Traceback (most recent call last):
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 2786, in _dep_map
    return self.__dep_map
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 2901, in __getattr__
    raise AttributeError(attr)
AttributeError: _Distribution__dep_map

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/requirements.py", line 35, in __init__
    parsed = parse_requirement(requirement_string)
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 64, in parse_requirement
    return _parse_requirement(Tokenizer(source, rules=DEFAULT_RULES))
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 82, in _parse_requirement
    url, specifier, marker = _parse_requirement_details(tokenizer)
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 126, in _parse_requirement_details
    marker = _parse_requirement_marker(
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 147, in _parse_requirement_marker
    tokenizer.raise_syntax_error(
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_tokenizer.py", line 163, in raise_syntax_error
    raise ParserSyntaxError(
pkg_resources.extern.packaging._tokenizer.ParserSyntaxError: Expected end or semicolon (after version specifier)
    pyparsing>=2.4*
             ~~~~~^

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/bin/wfuzz", line 33, in <module>
    sys.exit(load_entry_point('wfuzz==3.1.0', 'console_scripts', 'wfuzz')())
  File "/usr/bin/wfuzz", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 171, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/wfuzz/__init__.py", line 55, in <module>
    from .options import FuzzSession
  File "/usr/lib/python3/dist-packages/wfuzz/options.py", line 6, in <module>
    from .facade import (
  File "/usr/lib/python3/dist-packages/wfuzz/facade.py", line 1, in <module>
    from .helpers.file_func import get_home, get_path, get_config_dir
  File "/usr/lib/python3/dist-packages/wfuzz/helpers/file_func.py", line 4, in <module>
    import pkg_resources
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3324, in <module>
    def _initialize_master_working_set():
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3298, in _call_aside
    f(*args, **kwargs)
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3336, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 629, in _build_master
    ws.require(__requires__)
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 966, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 832, in resolve
    new_requirements = dist.requires(req.extras)[::-1]
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 2821, in requires
    dm = self._dep_map
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 2788, in _dep_map
    self.__dep_map = self._filter_extras(self._build_dep_map())
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 2816, in _build_dep_map
    dm.setdefault(extra, []).extend(parse_requirements(reqs))
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3170, in __init__
    super(Requirement, self).__init__(requirement_string)
  File "/home/admiralhr/.local/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/requirements.py", line 37, in __init__
    raise InvalidRequirement(str(e)) from e
pkg_resources.extern.packaging.requirements.InvalidRequirement: Expected end or semicolon (after version specifier)
    pyparsing>=2.4*

can you please help me? any idea?

rg0815 commented 1 year ago

maybe this works for you? https://github.com/xmendez/wfuzz/issues/349#issuecomment-1567347126