frida-python icon indicating copy to clipboard operation
frida-python copied to clipboard

Build failure on Linux with 3.14 no-GIL

Open clin1234 opened this issue 1 year ago • 2 comments

...
  [294/295] Compiling C object frida/_frida/_frida.abi3.so.p/extension.c.o
  FAILED: frida/_frida/_frida.abi3.so.p/extension.c.o
  /usr/bin/cc -Ifrida/_frida/_frida.abi3.so.p -Ifrida/_frida -I../frida/_frida -Isubprojects/frida-core/src/api -I../subprojects/frida-core/src/api -Isubprojects/frida-gum -I../subprojects/frida-gum -Isubprojects/frida-gum/gum -I../subprojects/frida-gum/gum -I../subprojects/frida-gum/gum/arch-x86 -I../subprojects/frida-gum/gum/arch-arm -I../subprojects/frida-gum/gum/arch-arm64 -I../subprojects/frida-gum/gum/arch-mips -Isubprojects/frida-gum/libs -I../subprojects/frida-gum/libs -Isubprojects/frida-gum/libs/gum/heap -I../subprojects/frida-gum/libs/gum/heap -Isubprojects/frida-gum/libs/gum/prof -I../subprojects/frida-gum/libs/gum/prof -I../subprojects/frida-gum/gum/backend-linux/include -I../subprojects/frida-gum/gum/backend-elf -I../subprojects/frida-gum/gum/backend-libunwind/include -Isubprojects/frida-gum/bindings -I../subprojects/frida-gum/bindings -I/usr/lib/include/python3.14t -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/glib-2.0 -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/lib/glib-2.0/include -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/gee-0.8 -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/json-glib-1.0 -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/capstone -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/libsoup-3.0 -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/quickjs -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/gio-unix-2.0 -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/libusb-1.0 -I/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/sdk-linux-x86_64/include/nice -fvisibility=hidden -fdiagnostics-color=always -DNDEBUG -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Os -g -ffunction-sections -fdata-sections -fPIC -pthread -DNGTCP2_STATICLIB -DNGHTTP2_STATICLIB -DGUM_STATIC -DFFI_STATIC_BUILD -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS -DPy_LIMITED_API=0x03070000 -MD -MQ frida/_frida/_frida.abi3.so.p/extension.c.o -MF frida/_frida/_frida.abi3.so.p/extension.c.o.d -o frida/_frida/_frida.abi3.so.p/extension.c.o -c ../frida/_frida/extension.c
  ../frida/_frida/extension.c:33:11: fatal error: pyconfig.h: No such file or directory
     33 | # include <pyconfig.h>
        |           ^~~~~~~~~~~~
  compilation terminated.
  ninja: build stopped: subcommand failed.
  INFO: autodetecting backend as ninja
  INFO: calculating backend command to run: /tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/deps/toolchain-linux-x86_64/bin/ninja
  Command '['/workspaces/venv/bin/python3', '/tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a/releng/meson/meson.py', 'compile']' returned non-zero exit status 1.
  make: *** [Makefile:4: all] Error 1
  Traceback (most recent call last):
    File "/workspaces/venv/lib/python3.14t/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
      main()
      ~~~~^^
    File "/workspaces/venv/lib/python3.14t/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
                               ~~~~^^^^^^^^^^^^^^^^^^^^^^^^
    File "/workspaces/venv/lib/python3.14t/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
      return _build_backend().build_wheel(wheel_directory, config_settings,
             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                          metadata_directory)
                                          ^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/build_meta.py", line 415, in build_wheel
      return self._build_with_temp_dir(
             ~~~~~~~~~~~~~~~~~~~~~~~~~^
          ['bdist_wheel'],
          ^^^^^^^^^^^^^^^^
      ...<3 lines>...
          self._arbitrary_args(config_settings),
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      )
      ^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/build_meta.py", line 397, in _build_with_temp_dir
      self.run_setup()
      ~~~~~~~~~~~~~~^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/build_meta.py", line 313, in run_setup
      exec(code, locals())
      ~~~~^^^^^^^^^^^^^^^^
    File "<string>", line 130, in <module>
    File "<string>", line 18, in main
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/__init__.py", line 108, in setup
      return distutils.core.setup(**attrs)
             ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/core.py", line 184, in setup
      return run_commands(dist)
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/core.py", line 200, in run_commands
      dist.run_commands()
      ~~~~~~~~~~~~~~~~~^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/dist.py", line 964, in run_commands
      self.run_command(cmd)
      ~~~~~~~~~~~~~~~~^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/dist.py", line 945, in run_command
      super().run_command(command)
      ~~~~~~~~~~~~~~~~~~~^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/dist.py", line 983, in run_command
      cmd_obj.run()
      ~~~~~~~~~~~^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/command/bdist_wheel.py", line 373, in run
      self.run_command("build")
      ~~~~~~~~~~~~~~~~^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
      self.distribution.run_command(command)
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/dist.py", line 945, in run_command
      super().run_command(command)
      ~~~~~~~~~~~~~~~~~~~^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/dist.py", line 983, in run_command
      cmd_obj.run()
      ~~~~~~~~~~~^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
      ~~~~~~~~~~~~~~~~^^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
      self.distribution.run_command(command)
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/dist.py", line 945, in run_command
      super().run_command(command)
      ~~~~~~~~~~~~~~~~~~~^^^^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/dist.py", line 983, in run_command
      cmd_obj.run()
      ~~~~~~~~~~~^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/command/build_ext.py", line 93, in run
      _build_ext.run(self)
      ~~~~~~~~~~~~~~^^^^^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/command/build_ext.py", line 359, in run
      self.build_extensions()
      ~~~~~~~~~~~~~~~~~~~~~^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/command/build_ext.py", line 476, in build_extensions
      self._build_extensions_serial()
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
    File "/tmp/pip-build-env-i9wel0aa/overlay/lib/python3.14t/site-packages/setuptools/_distutils/command/build_ext.py", line 502, in _build_extensions_serial
      self.build_extension(ext)
      ~~~~~~~~~~~~~~~~~~~~^^^^^
    File "<string>", line 120, in build_extension
    File "/usr/lib/python3.14/subprocess.py", line 577, in run
      raise CalledProcessError(retcode, process.args,
                               output=stdout, stderr=stderr)
  subprocess.CalledProcessError: Command '['make']' returned non-zero exit status 2.
  error: subprocess-exited-with-error
  
  × Building wheel for frida (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> See above for output.
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  full command: /workspaces/venv/bin/python3.14t /workspaces/venv/lib/python3.14t/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py build_wheel /tmp/tmpom6luv9o
  cwd: /tmp/pip-install-hvt653oy/frida_f97db7b061b24d39a0077a8f69dd0e9a
  Building wheel for frida (pyproject.toml) ... error
  ERROR: Failed building wheel for frida
Failed to build frida
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (frida)

Even though

(venv) @clin1234 ➜ /workspaces $ ls /usr/include/python3.14t/pyconfig.h 
/usr/include/python3.14t/pyconfig.h

clin1234 avatar Aug 15 '24 21:08 clin1234

No-gil cause problem I think I faced with the same problem

patrizok avatar Nov 11 '24 14:11 patrizok

stick to gil

Davis-3450 avatar Jul 04 '25 09:07 Davis-3450