Cython.Compiler.Errors.InternalError: Internal compiler error: '_common.pxi' not found

Getting below error while running on pycharm using python. Unable to run the program due to below error:

ERROR: Failed building wheel for TA-Lib-Precompiled
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (TA-Lib-Precompiled)
> Package :TA-Lib-Precompiled                                                                  
> Python Version : Python 3.12.1
> Cython version 3.0.11

Please help in finding the solution !!
Below are the logs :

> Collecting TA-Lib-Precompiled
  Using cached TA-Lib-Precompiled-0.4.25.tar.gz (276 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Requirement already satisfied: numpy in c:\python312\lib\site-packages (from TA-Lib-Precompiled) (1.26.4)
Building wheels for collected packages: TA-Lib-Precompiled
  Building wheel for TA-Lib-Precompiled (setup.py): started
  Building wheel for TA-Lib-Precompiled (setup.py): finished with status 'error'
  Running setup.py clean for TA-Lib-Precompiled
Failed to build TA-Lib-Precompiled

>WARNING: Ignoring invalid distribution ~ (C:\Python312\Lib\site-packages)
WARNING: Ignoring invalid distribution ~-p (C:\Python312\Lib\site-packages)
WARNING: Ignoring invalid distribution ~ip (C:\Python312\Lib\site-packages)
WARNING: Ignoring invalid distribution ~~p (C:\Python312\Lib\site-packages)
  error: subprocess-exited-with-error
  
  >python setup.py bdist_wheel did not run successfully.
  exit code: 1
  
  >[102 lines of output]
  C:\Python312\Lib\site-packages\setuptools\__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
  !!
  
          ********************************************************************************
          Requirements should be satisfied by a PEP 517 installer.
          If you are using pip, you can try `pip install --use-pep517`.
          ********************************************************************************
  
>  !!
    dist.fetch_build_eggs(dist.setup_requires)
  running bdist_wheel
  running build
  running build_py
  creating build\lib.win-amd64-cpython-312\talib
  copying talib\abstract.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\deprecated.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\stream.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\test_abstract.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\test_data.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\test_func.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\test_pandas.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\test_polars.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\test_stream.py -> build\lib.win-amd64-cpython-312\talib
  copying talib\__init__.py -> build\lib.win-amd64-cpython-312\talib
  running build_ext
  Traceback (most recent call last):
    File "<string>", line 2, in <module>
    File "<pip-setuptools-caller>", line 34, in <module>
    File "C:\Users\Jai\AppData\Local\Temp\pip-install-9i7a4_y6\ta-lib-precompiled_354bc0160a70451b8e32e1b0d92cb391\setup.py", line 146, in <module>
      setup(
    File "C:\Python312\Lib\site-packages\setuptools\__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\core.py", line 183, in setup
      return run_commands(dist)
             ^^^^^^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\core.py", line 199, in run_commands
      dist.run_commands()
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\dist.py", line 954, in run_commands
      self.run_command(cmd)
    File "C:\Python312\Lib\site-packages\setuptools\dist.py", line 995, in run_command
      super().run_command(command)
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_command
      cmd_obj.run()
    File "C:\Python312\Lib\site-packages\setuptools\command\bdist_wheel.py", line 381, in run
      self.run_command("build")
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\cmd.py", line 316, in run_command
      self.distribution.run_command(command)
    File "C:\Python312\Lib\site-packages\setuptools\dist.py", line 995, in run_command
      super().run_command(command)
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_command
      cmd_obj.run()
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\command\build.py", line 135, in run
      self.run_command(cmd_name)
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\cmd.py", line 316, in run_command
      self.distribution.run_command(command)
    File "C:\Python312\Lib\site-packages\setuptools\dist.py", line 995, in run_command
      super().run_command(command)
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_command
      cmd_obj.run()
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\command\build_ext.py", line 359, in run
      self.build_extensions()
    File "C:\Users\Jai\AppData\Local\Temp\pip-install-9i7a4_y6\ta-lib-precompiled_354bc0160a70451b8e32e1b0d92cb391\setup.py", line 124, in build_extensions
      super(build_ext, self).build_extensions()
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\command\build_ext.py", line 476, in build_extensions
      self._build_extensions_serial()
    File "C:\Python312\Lib\site-packages\setuptools\_distutils\command\build_ext.py", line 502, in _build_extensions_serial
      self.build_extension(ext)
    File "C:\Python312\Lib\site-packages\Cython\Distutils\build_ext.py", line 130, in build_extension
      new_ext = cythonize(
                ^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 1010, in cythonize
      module_list, module_metadata = create_extension_list(
                                     ^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 859, in create_extension_list
      kwds = deps.distutils_info(file, aliases, base).values
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 707, in distutils_info
      return (self.transitive_merge(filename, self.distutils_info0, DistutilsInfo.merge)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 716, in transitive_merge
      return self.transitive_merge_helper(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 722, in transitive_merge_helper
      deps = extract(node)
             ^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 687, in distutils_info0
      cimports, externs, incdirs = self.cimports_externs_incdirs(filename)
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "Cython\\Utils.py", line 129, in Cython.Utils.cached_method.wrapper
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 574, in cimports_externs_incdirs
      for include in self.included_files(filename):
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "Cython\\Utils.py", line 129, in Cython.Utils.cached_method.wrapper
    File "C:\Python312\Lib\site-packages\Cython\Build\Dependencies.py", line 556, in included_files
      include_path = self.context.find_include_file(include, source_file_path=filename)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Python312\Lib\site-packages\Cython\Compiler\Main.py", line 299, in find_include_file
      error(pos, "'%s' not found" % filename)
    File "C:\Python312\Lib\site-packages\Cython\Compiler\Errors.py", line 178, in error
      raise InternalError(message)
  Cython.Compiler.Errors.InternalError: Internal compiler error: '_common.pxi' not found
  [end of output]
  
>  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for TA-Lib-Precompiled
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (TA-Lib-Precompiled)

So TA-Lib-Precompiled looks like it was last updated about 3 years ago, while the TA-lib project that it’s based on was updated 5 days ago.

So I’d just use the updated project unless you have a very good reason not to. You aren’t getting the benefit of the “precompiled” part of the fork anyway, because it predates Python 3.12.

If you need to use the “-precompiled” version for some reason I suspect you have to pin Cython to version 0.29. That’s a bit difficult to do as a user with isolated build environments.