IT/Openstack

[Openstack - rocky ] mistral pkg install 시 error " error: command 'x86_64-linux-gnu-gcc' failed with exit status 1"

louky 2019. 6. 13. 09:38
반응형
환경
OS : Ubuntu 18.04

 

Openstack service pkg  중인 mistral pkg설치 중 tox command를 이용한 config  생성 중 아래와 같은 오류가 발생하였다. 

 

증상 

# tox -egencofig
... (생략)
  x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.6m -I/root/mistral/.tox/genconfig/include/python3.6m -c build/temp.linux-x86_64-3.6/check_libyaml.c -o build/temp.linux-x86_64-3.6/check_libyaml.o
  checking if libyaml is linkable
  x86_64-linux-gnu-gcc -pthread build/temp.linux-x86_64-3.6/check_libyaml.o -lyaml -o build/temp.linux-x86_64-3.6/check_libyaml
  building '_yaml' extension
  creating build/temp.linux-x86_64-3.6/ext
  x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.6m -I/root/mistral/.tox/genconfig/include/python3.6m -c ext/_yaml.c -o build/temp.linux-x86_64-3.6/ext/_yaml.o
  ext/_yaml.c:4:10: fatal error: Python.h: No such file or directory
   #include "Python.h"
            ^~~~~~~~~~
  compilation terminated.
  error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for PyYAML
  Running setup.py clean for PyYAML  
  Building wheel for ujson (setup.py): started
  Building wheel for ujson (setup.py): finished with status 'error'

 

원인

error 로그 중 중간에 보면 " x86_64-linux-gnu-gcc " 관련  command error 가 발생하였다 .

   #include "Python.h"
            ^~~~~~~~~~
  compilation terminated.
  error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Python.h라는 헤더 파일이 없어서 gcc가 응용 프로그램을 빌드하는데 실패한것이다.  

 

 

조치 

Python.h는 python-dev라는 PKG에 포함되어 있는데 tox라는 python pkg 는 기본적으로 python3를사용한다. 이에 python3-dev라는  pkg가 있어야 한다. 

 

- PKG 설치 여부 확인 

root@osc01(admin-openrc):~/mistral# dpkg -l | grep python3-dev
root@osc01(admin-openrc):~/mistral#

- PKG 미 설치시 설치 

root@osc01(admin-openrc):~/mistral# apt install python3-dev -y 

- PKG 설치 후 확인

root@osc01(admin-openrc):~/mistral# dpkg -l | grep python3-dev
ii  libpython3-dev:amd64                  3.6.7-1~18.04                          amd64        header files and a static library for Python (default)
ii  python3-dev                           3.6.7-1~18.04                          amd64        header files and a static library for Python (default)

 

ppython3-dev 설치 이후 tox command를 다시 실행하면 정상적으로 실행 된다. 

반응형