& # 8220; 193:% 1 no es una aplicación Win32 válida & # 8221; error con una nueva aplicación Rails

StackOverflow https://stackoverflow.com/questions/1208029

  •  05-07-2019
  •  | 
  •  

Pregunta

Tengo una nueva aplicación de rails que he creado en Windows 7 yendo a un directorio y escribiendo "rails newapp". La creación salió bien, y cuando accedo a la página raíz, todo está bien. Sin embargo, cuando intento acceder a una página que accedería a la base de datos, obtengo esto:

193: %1 is not a valid Win32 application.

En el desarrollador.log. Mysql está funcionando bien en mi máquina, y tengo otras aplicaciones que tengo aquí en otros directorios, solo que esta no funciona. ¿Alguna idea?

¿Fue útil?

Solución

Aquí está la respuesta que me funcionó. Resulta que era un problema de x64 vs.x32 y Rails 2.3.2.

La respuesta que obtuve de aquí ( http://osdir.com/ml /RubyonRailsTalk/2009-06/msg01775.html ):

  

En caso de que alguien más tenga el mismo   problema después de mucha lucha en   mi máquina Windows XP x64, con MySQL   5.1.30 (x64) y Rails 2.3.2 instalados, esta sugerencia anterior   me ayudó.        Descargue libMySql.dll desde aquí ( http: //instantrails.rubyforge .org / svn / trunk / InstantRails-win / InstantRails / mysql / bin / )   y ponerlo en ruby ??\ bin resolvió el   problema.

Otros consejos

Resuelto siguiendo las instrucciones en este blog aquí: http://blog.mmediasys.com/2011/07/07/installing-mysql-on-windows-7-x64-and-using-ruby-with-it /

que implica el uso de la versión no instalador de MySQL Connector http: //dev.mysql. com / downloads / connector / c /

No pude hacer que webrick se ejecutara en el sistema x64 de Windows 7 - obtuve el mismo error

" 193:% 1 no es una aplicación Win32 válida "

Si acabo de reemplazar el archivo libmysql.dll (como se sugiere en las publicaciones anteriores), recibo un error diferente.

" Versión incorrecta de la biblioteca del cliente MySQL! "

Mi ruta se configura así: C: \ Ruby187 \ bin; C: \ Archivos de programa \ MySQL \ MySQL Server 5.5 \ bin; C: \ Ruby187 \ lib \ ruby ??\ gems \ 1.8 \ gems \ rails-3.1.1 \ bin

(no necesitaba cambiar la ruta de nuevo)

Este error ocurre si tiene un archivo con el nombre " Programa " en la raíz de tu disco. Digamos, por ejemplo, que está tratando de ejecutar " C: \ Archivos de programa \ SomeApp \ Bin \ SomeExe.Exe " intenta ejecutar " C: \ Programme " si existiera. En algunas situaciones, se crea un archivo con este nombre si olvida citar "C: \ Archivos de programa ..." con algunos comandos de línea de comandos. Por supuesto, esto también se aplica a usted D: unidad, etc.

Este error a menudo ocurre si intenta iniciar los servicios, pero puede ocurrir en otras situaciones.

Simplemente eliminar el archivo C: \ Program o D: \ Program, etc. resuelve el problema.

Habiendo encontrado múltiples problemas al configurar MySQL con Rails en Windows x64, mis recomendaciones son:

      
  • Instale la versión de 32 bits de MySQL, no intente usar la versión de 64 bits.
  •   
  • Instalar en una ruta sin espacios, no acepte valores predeterminados como "C: \ Archivos de programa \ MySQL \ MySQL Server 5.5 \"
  •   
  • Instale la gema MySQL con una invocación similar a:            
         gem install mysql -- --platform=ruby --with-mysql-dir="D:\Programs\MySQL\MySQL-Server-5.5" --with-libmysqllib="D:\Programs\MySQL\MySQL-Server-5.5\lib\"
           
  •   
  • Asegúrese de desinstalar / reinstalar la gema cada vez que instale una nueva versión de MySQL.
  •   
  • Asegúrese de que D: \ Programas \ MySQL \ MySQL-Server-5.5 \ lib esté incluido en su ruta, así como D: \ Programas \ MySQL \ MySQL-Server-5.5 \ bin. Asegúrese de que no se estén recogiendo otras copias de libmysql.dll de ninguna otra parte de su ruta o de sus directorios de instalación de ruby.

Esto funcionó para mí con mysql-5.5.15-win32, mysql-2.8.1-x86-mingw32 y Windows 7 x64.

Copie el archivo libmysql.dll del directorio de instalación de MySQL y péguelo en el directorio bin de la instalación de Ruby. Es posible que deba descargar un archivo zip de http://dev.mysql.com/downloads/mysql/ si el directorio de instalación de MySQL no incluye el archivo libmysql.dll.

Usando Ruby (1.8.7) con MySQL (5.5) en Windows 7 y también obteniendo el error 193. Copiando el libmySQL.dll a ruby / bin funcionó bien para mí.

C:\Work\redmine-2.4.1\config\database.yml content:

# Default setup is given for MySQL with ruby1.9. If you're running Redmine
# with MySQL and ruby1.8, replace the adapter name with `mysql`.
# Examples for PostgreSQL, SQLite3 and SQL Server can be found at the end.
# Line indentation must be 2 spaces (no tabs).

production:
  adapter: mysql
  database: redmine
  host: localhost
  username: root
  password: "pwd@123"
  encoding: utf8

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top