2013-06-20 18 views
6

Sto provando a compilare Pyaudio, (un modulo Python) dal sorgente, poiché sto usando Windows, e sono disponibili solo i binari a 32 bit - Ho bisogno di 64. A seguito di these instructions Ho scaricato Cygwin e installato ogni componente, per essere sicuro. Per prima cosa è necessario installare Portaudio, un altro modulo.Il compilatore C non può creare file eseguibili - Cygwin/MiniGW

Quando eseguo CFLAGS="-mno-cygwin" LDFLAGS="-mno-cygwin" ./configure, ho l'errore di config.log configure: error: C compiler cannot create executables. See 'config.log' for more details. ha una linea aggiuntiva di sotto di tale messaggio: gcc: The -mno-cygwin flag has been removed; use a mingw-targeted cross-compiler.

Questo mi porta a credere che forse Cygwin sta usando il compilatore sbagliato; le istruzioni sono per l'uso di MinGw con Cygwin, ma non ho mai specificato minigw nel processo. Mi chiedo anche se ci sia qualcosa nei file build di PyAudio che deve essere modificato per 64-bit. Non so nulla di C, compilazione, Cygwin o MinGW, e sono nuovo alla programmazione in generale. Qualche idea? Qualche altra informazione che posso fornire?

risposta

10

Le versioni correnti di Cygwin gcc non supportano più -mno-cygwin perché non ha mai funzionato correttamente. Invece, dovresti utilizzare un cross-compilatore appropriato, fornito dai pacchetti mingw64-i686-gcc, quindi eseguire ./configure --host=i686-w64-mingw32.

+0

Un'altra opzione invece della compilazione incrociata dall'ambiente Cygwin consiste nell'utilizzare un'installazione MinGW nativa di Windows (le distribuzioni TDM o nuwen sono molto facili da installare) e utilizzare l'ambiente MSYS di MinGW per gestire il passo './Configure'. Presumo che il passo di configurazione di Pyaudio funzioni in MSYS. –

+0

Grazie mille. Questa risposta ha risolto il problema che ho postato. Ho incontrato altri problemi più avanti nel passaggio "python setup.py build --static-link -cmingw32", fuori dall'ambiente Cygwin. L'errore era 'cc1.exe: errore: opzione della riga di comando non riconosciuta' -mno-cygwin ', errore: comando' gcc 'fallito con exit status 1'. Quando si prova senza -cming32, l'errore è cambiato in "Impossibile trovare vcvarsall.bat". Ho finito per trovare un binario su http://www.lfd.uci.edu/~gohlke/pythonlibs/ che mi ha permesso di smettere di risolvere il problema. –

0

In alcuni casi è un antivirus che causa problemi. Avast avast e ho dovuto disabilitarlo.

Problemi correlati