헝가리 문제 에 대한 해결책을 찾는 동안 이 GitHub 링크를 찾았습니다 .
나는 readme.md
파일을 살펴보고 거기에 설명 된 모든 것을 수행했습니다. hungarian.so
작업 디렉토리에 복사 한 후을 hungarian.cpp
사용하여 컴파일하려고 할 때 make hungarian
다음과 같은 출력이 나타납니다.
anupam@JAZZ:~/Python/hungarian-master$ make hungarian
g++ hungarian.cpp -o hungarian
hungarian.cpp:7:20: fatal error: Python.h: No such file or directory
#include "Python.h"
^
compilation terminated.
make: *** [hungarian] Error 1
Stack Overflow 에서이 관련 질문을 찾았 지만 대답이 효과가 없었습니다.
나는 GitHub에 매우 익숙하다 g++
. 에 모듈을 추가하는 방법을 모른다 . 누군가 나를 도울 수 있습니까? 다음에 무엇을해야합니까?
답변
보고 후 https://github.com/hrldcpr/hungarian/blob/master/hungarian.cpp , 당신이 모두 필요 것 같다 :
#include "Python.h"
#include "numpy/arrayobject.h"
다음 패키지를 설치하십시오.
sudo apt-get install libpython2.7-dev python-numpy
누락 된 패키지 (헤더를 제공하는 패키지)를 식별하려면 packages.ubuntu.com을보십시오 .
답변
Ubuntu 15.10 및 Python 3의 경우 :
sudo apt-get install python-dev
sudo apt-get install python3-dev
sudo apt-get install libpython3-dev
sudo apt-get install libpython3.4-dev
sudo apt-get install libpython3.5-dev
답변
이것은 C로 확장되는 파이썬 코드 입니다. 사용할 필요가 없습니다 make
. 파이썬 자체는 cpp
적절한 플래그로 코드 컴파일을 처리합니다.
먼저 헤더 파일과 정적 라이브러리가 필요합니다. 다음과 같이 설치하십시오.
sudo apt-get install python-dev
example.py
코드에서 실행하려면 다음 명령을 따르십시오 .
python setup.py build
cp build/lib.linux-i686-2.7/hungarian.so .
python example.py
참고 : 사용
python2.7
하고 있으므로 위 명령을 실행할 때 파이썬 버전을 관리해야합니다.python-numpy
파이썬 스크립트가 필요로하지 않으면 설치해야한다고 언급 할 가치 가 있습니다.