Python.h: 해당 파일이나 디렉터리가 없습니다.

Python.h: 해당 파일이나 디렉터리가 없습니다.

저는 Arch Linux에서 omniORB 4.1.6을 빌드하려고 합니다. 를 입력하면 make메시지는 다음과 같습니다.

../../../../../src/tool/omniidl/cxx/idlpython.cc:188:26: fatal error:  python3.3/Python.h: No such file or directory
#  include PYTHON_INCLUDE

python3과 python2가 모두 설치되어 있다고 확신하며 지난번 Linux Mint에서 동일한 작업을 수행하려고 시도했을 때 동일한 문제가 발생한 것을 기억합니다. 당시 나는 다음 명령으로 문제를 해결했습니다.

sudo apt-get install python-dev

그러나 Arch는 python-dev를 Python과 분리하지 않는 것 같습니다. 내 것을 확인 /usr하고 아래에서 Python.h를 찾았습니다 /usr/include/python3.3m. 이제 어떻게 해야 합니까?

답변1

정상 작동

./configure

달리기 전에 올바르게 설정해야 할 것이 몇 가지 있지만 make올 가을에는 그렇지 않은 것 같습니다.

파이썬 .../include/Python3.3m3.3 ..../include/python2.7omniORBm

다음 명령을 사용하여 python3.3m에서 python3.3으로의 링크를 설정할 수 있습니다.

cd /usr/include
ln -s python3.3m python3.3

빌드 프로세스를 다시 시도합니다(python3.3 구성을 가정하고 --prefix=/usr필요에 따라 조정).cd

답변2

python-dev 패키지를 설치했지만 여전히 오류가 발생하는 경우;

PYTHON구성 명령줄의 매개변수가 파일의 디렉터리인 줄 알았는데 Python.h... 아니, 인터프리터의 경로가 사용되었습니다.

저는 omniORB에서 "build" 디렉토리를 생성하고 사용했습니다.

cd "omniORB install loc"; mkdir build; cd build; ...

구성 명령줄의 일부로 Python의 위치를 ​​제공할 수 있습니다.

../configure ... PYTHON=/usr/bin/python3

내 경우에는 OmniORB가 설치되어 /opt/opt디렉토리로 사용되었습니다.

../configure --prefix=/opt/omniORB.build.4.3.0 --with-omniORB-config=/opt/omniORB.build.4.3.0/omniORB.cfg --with-omniNames-logdir=$HOME/logs PYTHON=/usr/bin/python3

관련 정보