[pyar] errores raros con rtmidi

Miguel Barraza correo en miguelbarraza.com.ar
Lun Jul 31 11:22:51 ART 2017


  Buenas!, luego de pelearme ayer todo el día con la instalación de rtmidi con pip en win 7 de 64 y en varias versiones, la ultima fue en py3.6. Encontré una solución un tanto rara, la comento por aquí por si alguien mas le pasó y encontró otra forma, conoce o se le ocurre que pasó o experimentó otra experiencia con esta librería.

  Intenté probar varias librerías y aunque midiutil genera midi, no lo reproduce al vuelo como yo andaba buscando. Y todas las restantes parece que dependen de rtmidi. Así que me puse mano a la obra a buscarle la vuelta. Al instalar rtmidi me tiraba el siguiente error:

  Running setup.py bdist_wheel for rtmidi: started
  Running setup.py bdist_wheel for rtmidi: finished with status 'error'
    LINK : fatal error LNK1181: cannot open input file 'python34.lib'

al parecer parece que busca este archivo: 'python34.lib'
acomodé el path de windows y no podía pasar este problema. instalé py3.4, puse su path en win y tampoco, no pasaba de esto. revisando el log descubro que busca este archivo en:

/LIBPATH:C:\Program Files (x86)\Windows Kits\8.1\lib\winv6.3\um\x64 winmm.lib python34.lib

entro a esa carpeta y si está 'winmm.lib' pero parece que también busca aquí 'python34.lib' así que saqué ese archivo desde %pythonPath34/libs y lo puse en esa carpeta, volví a probar instalar desde pip:

    Running setup.py install for rtmidi: finished with status 'done'

y: ¡conseguido!.
fui a probarlo desde py36 y me tira error, python34.dll no compatible. parece ser que desde python34.lib saca la dll de py34 y como lo intento ejecutar desde py36 da error...

  Lo desinstalé con pip, y fui a esa carpeta de vuelta y borré 'python34.lib', saqué desde /libs de python36 'python36.lib' lo pegué en:
C:\Program Files (x86)\Windows Kits\8.1\lib\winv6.3\um\x64
y lo renombré como: 'python34.lib'. haciendo creer a esa instalación ahí tienes la lib de py34, aunque en verdad es la de py36, me pareció un tanto estraña esta idea pero funcionó.

  Ahora la instalación de rtmidi se completó exitosamente y funciona en py36. Pero aunque no tira mas error no logro hacerlo andar.
revisando un poco mas con pip descubro que hay otra librería similar: python-rtmidi, la instalo y se genera en:
/lib/site-packages/python_rtmidi-1.1.0.dev0-py3.6-win-amd64.egg
los archivos pero no logro hacer funcionar nada. desde este directorio saco la carpeta: rtmidi, y la copio en:
/lib/site-packages/
borrando el anterior que tenía.

y desde dentro saco el archivo: _rtmidi.cp36-win_amd64.pyd
y tambien lo copio suelto en: 
/lib/site-packages/
borrando el que tenia con la instalación de rtmidi.

¡y ahora si todo funciona!. ya puedo reproducir midi al vuelo desde un código python.
no se porqué me llevó tanta vuelta, y no se si instalando python-rtmidi y copiando los archivos a primera esto funcionaría, pero despues de tanta vuelta, logré hacer andar el módulo que era la finalidad.

nota: probé instalandolo directo la librería desde el rrepo de github, y algunos exe que encontré por haí, pero tampoco funcionaban, así que no comenté esa parte en esto, ya que con pip todo funcionó.

ate, Miguel

Subject: Re: [pyar] error con pip


    Gracias por las respuestas.
  no es un tema de py27, ya que probé en python 3.6 y luego de pedirme instalar virtual c++ 2014 (que es super pesado) me tira el mismo eror:

      LINK : fatal error LNK1181: cannot open input file 'python34.lib'
      error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\link.exe' failed with exit status 1181

    Hasta incluso probé instalando el py3.4 y en mi sistema teniendo los 3 no funciona, sigue con lo mismo.

    Las rutas son válidas, y el log del error es largo, pero finaliza en eso, como que no encuentra python34.lib

    Por lo que veo aquí:
  https://stackoverflow.com/questions/18312642/fatal-error-lnk1181-cannot-open-input-file-c-python33-lib-obj
  es un tema con el linker, pero ahí ya no se que más hacer o que probar.

  ¿se les ocurre algo mas que pueda probar?.

    Ahora buscaré otro módulo para manipular midi. el mido y su problema con el rtmidi me superó.

  atte, Miguel

       Libre de virus. www.avast.com  



------------------------------------------------------------------------------


  _______________________________________________
  Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
  Sitio web: http://www.python.org.ar/

  Para administrar la lista (o desuscribirse) entrar a http://listas.python.org.ar/listinfo/pyar

  La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar

---
El software de antivirus Avast ha analizado este correo electrónico en busca de virus.
https://www.avast.com/antivirus
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20170731/678af167/attachment-0001.html>


Más información sobre la lista de distribución pyar