Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Build error with Python 3.13: ‘_Py_SetProgramFullPath’ was not declared in this scope #34076

Open
pulver opened this issue Feb 16, 2025 · 1 comment

Comments

@pulver
Copy link

pulver commented Feb 16, 2025

When building with Python 3.13 running invoke agent.build results in a compiler error:

...
[ 29%] Building CXX object three/CMakeFiles/datadog-agent-three.dir/three.cpp.o
...
datadog-agent/rtloader/three/three.cpp:88:5: error: ‘_Py_SetProgramFullPath’ was not declared in this scope; did you mean ‘Py_GetProgramFullPath’?
   88 |     _Py_SetProgramFullPath(_pythonExe);
      |     ^~~~~~~~~~~~~~~~~~~~~~
      |     Py_GetProgramFullPath

Agent Environment

OS: Arch linux (2024-02-16)

@sgnn7
Copy link
Contributor

sgnn7 commented Feb 18, 2025

Hi @pulver / @mattpulver ,
We are aware of this upcoming issue. As mentioned by @vickenty in the PR itself, limiting this API call to only supported Python versions without per-platform filtering will just obscure the fact that Python v3.13+ builds will not be able to fully support multiprocessing on Windows (used in some integrations OOTB). This is why the optimal fix needs to involve a bit more work to enable PyConfig initialization. We can leave this ticket open but the related opened PR as-is will not likely be integrated into the codebase.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants