저는 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.3m
3.3 ..../include/python2.7
omniORB
m
다음 명령을 사용하여 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