2015-07-15 23 views
5

Próbowałem zainstalować narzędzie graficzne w systemie Mac OS X 10.10 przy użyciu homebrew. Proces tworzenia zaparzacza działa dobrze, ale gdy próbuję importować narzędzie wykresów, otrzymuję the error described in this question. Innym problemem z homebrew jest to, że zawsze buduję narzędzie graficzne dla Pythona2.7 i instaluję pakiety w folderze sit-packages Python 2.7. Ale chcę go użyć w Pythonie 3.4. Oto powody, dla których próbowałem zbudować graficzne narzędzie ze źródła.Tworzenie narzędzia graficznego na OSX z Pythonem 3.4

Polecenie ./configure automatycznie korzysta również z języka Python 2.7. Więc zdałem mu żądaną wersję Pythona z ./configure PYTHON=python3.4

Następnie wykrywa poprawną wersję, jak również związane z nimi ścieżki, ale zderzenie z powodu następującego błędu:

configure: error:
Could not link test program to Python. Maybe the main Python library has been installed in some non-standard library path. If so, pass it to configure, via the LDFLAGS environment variable.
Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib"

====================================================================== ERROR! You probably have to install the development version of the Python package for your distribution. The exact name of this package varies among them.

======================================================================

błąd występuje i bez PYTHON zmiennej zestawu. Z wyjścia ./configure widzę, że wszystko działa poprawnie z wyjątkiem ostatniego wiersza, który mówi:

checking consistency of all components of python development environment... no

Co robi powyższa linia myśli i jak wykres-tool I poprawnie zainstalować na moim Maschine?

Odpowiedz

2

Komunikat o błędzie dokładnie wyjaśnia, co należy zrobić, aby uzyskać . Ponieważ python został zainstalowany w niestandardowej ścieżce, musisz podać flagę LDFLAGS="-L/usr/non-standard-path/python/lib" wskazującą katalog, w którym znajdują się biblioteki Pythona. Najprawdopodobniej jest to "/usr/local/lib", jeśli używasz homebrew.

+0

Próbowałem ustawić LDFLAGS przed opublikowaniem tego pytania, ale niestety nie miało to żadnego efektu. – MaxPowers

+0

Wtedy prawdopodobnie nie przeszedłeś prawidłowej ścieżki. Zajrzyj do pliku config.log, aby zobaczyć rzeczywisty błąd. –

+0

Też mi nie pomogły. Wydaje się, że opcja '-u _PyMac_Error Python.framework/Versions/2.7/Python' na gcc jest przyczyną dławienia, ale nie ma pojęcia, jak to naprawić. –

0

ja otrzymuję ten błąd, gdy próbuje zainstalować graph-tool używając przestarzałego się autoconf/automake/pkg-config kombinację (zainstalowany przy użyciu yum w CentOS 5.10). Zainstalowanie tych pakietów ze źródła rozwiązało problem ... chociaż nie jestem pewien jak to się wiąże z moją instalacją Pythona ...

0

Dla mnie działało, przekazując zmienną PYTHON_EXTRA_LDFLAGS="-Wl,-stack_size,1000000 -F/usr/local/Cellar/python3/3.6.3/Frameworks -framework CoreFoundation".
W twoim przypadku będzie to ścieżka do instalacji homebrew z python3.4.
Sposób I okazało się, że jest w config.log, komunikat o błędzie wskazuje, co następuje:

configure:19023: checking python extra libraries 
configure:19030: result: -ldl -framework CoreFoundation 
configure:19037: checking python extra linking flags 
configure:19044: result: -Wl,-stack_size,1000000 -framework CoreFoundation Python.framework/Versions/3.6/Python 
configure:19051: checking consistency of all components of python development environment 
configure:19079: gcc -o conftest -g -O2 -DNDEBUG -I/usr/local/Cellar/python3/3.6.3/Frameworks/Python.framework/Versions/3.6/include/python3.6m -F/usr/local/Cellar/python3/3.6.3/Frameworks/ -Wl,-stack_size,1000000 -framework CoreFoundation Python.framework/Versions/3.6/Python conftest.c -L/usr/local/opt/python3/Frameworks/Python.framework/Versions/3.6/lib -lpython3.6m -ldl -framework CoreFoundation -ldl -framework CoreFoundation >&5 
clang: error: no such file or directory: 'Python.framework/Versions/3.6/Python' 

Błąd wydaje się być droga 'Python.framework/Versions/3.6/Python', że w instalacji homebrew nie istnieje. I szuka tej samej ścieżki w config.log i znalazłem ten wiersz:

PYTHON_EXTRA_LDFLAGS="-Wl,-stack_size,1000000 -framework CoreFoundation Python.framework/Versions/3.6/Python" 

Więc rozwiązaniem dla mnie było, aby przekazać tę zmienną z właściwą ścieżkę.