davidmalcolm / gcc-python-plugin

GCC plugin that embeds CPython inside the compiler
GNU General Public License v3.0
197 stars 58 forks source link

build error with gcc 10.3.1 #193

Closed MiaoheLin closed 1 year ago

MiaoheLin commented 1 year ago

When I try to compile the gcc-python-plugin, I met the below error. It's very kind of you if you could give me some points. Note python-devel is already installed. So I'm confused why Python.h is not found only for gcc-python.c. Any reply is appreciated! Many thanks in advance!


[root@hce2 gcc-python-plugin]# make
Makefile:202: warning: overriding recipe for target 'autogenerated-casts.c'
Makefile:199: warning: ignoring old recipe for target 'autogenerated-casts.c'
python generate-config-h.py -o autogenerated-config.h --gcc="cc" --plugindir="/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin"
Checking whether cc was built with C or C++... C++
checking for gcc-plugin.h... found
checking whether plugin.def defines PLUGIN_FINISH_DECL... yes
checking whether passes are C++ classes... yes
writing autogenerated-config.h
writing autogenerated-EXTRA_CFLAGS.txt
python ./testcpybuilder.py -v
test_module_with_type (__main__.SimpleTest) ... ok
test_simple_compilation (__main__.SimpleTest) ... ok
test_version_parsing (__main__.SimpleTest) ... ok

----------------------------------------------------------------------
Ran 3 tests in 0.262s

OK
python ./dejagnu.py -v
test_dg_do (__main__.Tests) ... ok
test_dg_message_found (__main__.Tests) ... ok
test_dg_message_not_found (__main__.Tests) ... ok
test_dg_options (__main__.Tests) ... ok
test_directive_with_full_args (__main__.Tests) ... ok
test_directive_with_full_args_2 (__main__.Tests) ... ok
test_multiline_ranges (__main__.Tests) ... ok
test_nonempty_stdout (__main__.Tests) ... ok
test_parse_line (__main__.Tests) ... ok
test_surplus_errors (__main__.Tests) ... ok

----------------------------------------------------------------------
Ran 10 tests in 0.004s

OK
cd gcc-c-api && make  libgcc-c-api.so CC=cc 
make[1]: Entering directory '/root/gcc-python-plugin/gcc-c-api'
python ./xml-to-h.py ./
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-callgraph.o -I./ gcc-callgraph.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-cfg.o -I./ gcc-cfg.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-constant.o -I./ gcc-constant.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-declaration.o -I./ gcc-declaration.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-diagnostics.o -I./ gcc-diagnostics.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-function.o -I./ gcc-function.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-gimple.o -I./ gcc-gimple.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-location.o -I./ gcc-location.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-option.o -I./ gcc-option.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-rtl.o -I./ gcc-rtl.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-tree.o -I./ gcc-tree.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-type.o -I./ gcc-type.c
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o gcc-variable.o -I./ gcc-variable.c
python ./generate-casts-c.py autogenerated-casts.c ./
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.  -c -x c++ -fno-rtti -o autogenerated-casts.o -I./ autogenerated-casts.c
cc -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I. -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall  -shared gcc-callgraph.o gcc-cfg.o gcc-constant.o gcc-declaration.o gcc-diagnostics.o gcc-function.o gcc-gimple.o gcc-location.o gcc-option.o gcc-rtl.o gcc-tree.o gcc-type.o gcc-variable.o autogenerated-casts.o -o libgcc-c-api.so 
make[1]: Leaving directory '/root/gcc-python-plugin/gcc-c-api'
make: python-config: No such file or directory
cc -O2 -Werror -g -fPIC -fno-strict-aliasing -Wall -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include -I/usr/lib/gcc/x86_64-linux-gnu/10.3.1/plugin/include/c-family -I.   -c -x c++ -fno-rtti -o gcc-python.o -I./ -I./gcc-c-api -I./gcc-c-api gcc-python.c
gcc-python.c:20:10: fatal error: Python.h: No such file or directory
   20 | #include <Python.h>
      |          ^~~~~~~~~~
compilation terminated.

make: *** [Makefile:168: gcc-python.o] Error 1
[root@hce2 gcc-python-plugin]# git branch
  constraints
  firehose
* master
  porting-to-gcc-9
  proposed-plugin-api
  sm
  ui

[root@hce2 gcc-python-plugin]# gcc --version
gcc (GCC) 10.3.1
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[root@hce2 gcc-python-plugin]# python --version
Python 3.9.9
[root@hce2 gcc-python-plugin]#