Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

...mysql2/mysql2.so:[BUG] Falha de segmentação ruby ​​2.0.0p247


O libmysql.lib incluído no MySQL Connector/C 64 bits não é compatível com o compilador mingw64-gcc.

Você precisa gerar o arquivo libmysql.lib compatível com mingw64.

Para gerar o arquivo libmysql.lib, você precisa de gendef.exe, que pode ser obtido da distribuição mingw-w64 (peguei de https://code.google.com/p/structure-svm-map/downloads/detail?name=svm-map -win.zip&can=2&q= )

Na pasta lib do conector mysql, produza libmysql.lib com as seguintes etapas.

gendef.exe libmysql.dll

dlltool -v --dllname libmysql.dll --def libmysql.def --output-lib libmysql.lib

E executando o comando normal de instalação de gem. gem install mysql2 -v '0.3.12b6' -- --with-opt-dir="..."

NOTA:No caso do MySQL Connector/C 6.1, devido à rotina de comparação de versões, você não pode usar o módulo mysql2 com a seguinte exceção. RuntimeError:Versão incorreta da biblioteca cliente MySQL! Esta gem foi compilada para 5.7.2-m12, mas a biblioteca cliente é 6.1.0.

Você deve usar mysql-connector-c-6.0.2-winx64.msi em http://dev.mysql.com/downloads/connector/c/6.0.html#downloads

Fonte:https://bugs.ruby-lang.org/issues/8591