pybind / pybind11

Seamless operability between C++11 and Python

Home Page:https://pybind11.readthedocs.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[BUG]: pybind11 does not show compiler output on Windows

juanjosegarciaripoll opened this issue · comments

Required prerequisites

What version (or hash if on master) of pybind11 are you using?

2.12.0

Problem description

When I build a Python project using setuptools, the compiler fails on incorrect C++ files, but it shows no output. If I add the line

from Cython.Build import cythonize

to the top of setup.py the compiler output is restore, but that introduces one more dependency.

Reproducible example code

setup.py:

from setuptools import find_packages, setup, Extension
from pybind11.setup_helpers import Pybind11Extension

pybind11_modules = [
    Pybind11Extension(
        "core",
        [
            "core.cc",
        ],
        cxx_std=17,
    ),
]

setup(ext_modules=pybind11_modules)

core.cc:
```c++
int foo(int x) {
  int a = b;
  return x;
}

Output in Linux:

~/tmp$ python setup.py build_ext --inplace
running build_ext
INFO: Disabling color, you really want to install colorlog.
Disabling color, you really want to install colorlog.
/usr/lib/python3/dist-packages/pythran/tables.py:4530: FutureWarning: In the future `np.bool` will be defined as the corresponding NumPy scalar.
  if not hasattr(numpy, method):
/usr/lib/python3/dist-packages/pythran/tables.py:4563: FutureWarning: In the future `np.bytes` will be defined as the corresponding NumPy scalar.
  obj = getattr(themodule, elem)
error: Command "x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I/home/jjgarcia/.quantum/lib/python3.11/site-packages/pybind11/include -I/home/jjgarcia/.quantum/include -I/usr/include/python3.11 -c core.cc -o build/temp.linux-x86_64-cpython-311/core.o -fvisibility=hidden -g0 -std=c++17" failed with exit status 1


### Is this a regression? Put the last known working version here if it is.

Not a regression