복붙노트

[RUBY-ON-RAILS] 초기화되지 않은 상수의 MysqlCompat : (mms2r 보석을 사용하여) MysqlRes

RUBY-ON-RAILS

초기화되지 않은 상수의 MysqlCompat : (mms2r 보석을 사용하여) MysqlRes

새로운 서버에 광산의 레일 응용 프로그램을 이동하고 몇 보석 종속성을 설치했다. 그러나, 나는 오류를 얻을 MySQL의 보석을 설치 한 후, 초기화되지 않은 상수는 MysqlCompat :: MysqlRes를, 내가 MySQL 데이터베이스를 포함하는 레이크 명령을 실행하려고 할 때마다. 내가 mms2r 보석을 필요로 할 때 나는 단지이 오류가 보인다. 누구도 들어 본 적이 있습니까? 나는 MySQL의에게 2.8.1 보석을 실행하고 있습니다.

해결법

  1. ==============================

    1.내 맥 OS X 10.6에 내 MacPorts를 완벽하게 일한 2.8.1 보석을 설치하기 위해 이런 짓을-mysql5 서버 :

    내 맥 OS X 10.6에 내 MacPorts를 완벽하게 일한 2.8.1 보석을 설치하기 위해 이런 짓을-mysql5 서버 :

    sudo env ARCHFLAGS="-arch x86_64" gem install mysql
    
  2. ==============================

    2.기본적으로 문제는 발견 할 수없는 동적 라이브러리 libmysqlclient이다. 위의 솔루션은 작동하지만 그들에게 언제든지 당신의 MySQL의 새 버전을 설치할 때 보석을 다시 작성하거나 다시 적용해야합니다.

    기본적으로 문제는 발견 할 수없는 동적 라이브러리 libmysqlclient이다. 위의 솔루션은 작동하지만 그들에게 언제든지 당신의 MySQL의 새 버전을 설치할 때 보석을 다시 작성하거나 다시 적용해야합니다.

    다른 방법은 동적 하중 경로에 라이브러리를 포함하는 MySQL의 디렉토리를 추가하는 것입니다. 문제는 내의 .bashrc 파일에 다음과 같은 해결했다 퍼팅 :

    export DYLD_LIBRARY_PATH="/usr/local/mysql/lib:$DYLD_LIBRARY_PATH"
    
  3. ==============================

    3.루비는 64 비트 및 32 비트 동안 내 문제는 32 비트 설치되는 내 "MySQL은"때문이었다. 이 명령으로 확인

    루비는 64 비트 및 32 비트 동안 내 문제는 32 비트 설치되는 내 "MySQL은"때문이었다. 이 명령으로 확인

     file `which mysql` 
     file `which ruby`
    

    모두 마하-O 실행 x86_64의 또는 마하-O 실행 파일의 i386을 64 비트 64 비트와 일치해야합니다. 그럼, 64 비트 mysql을 설치

    export ARCHFLAGS="-arch x86_64" ; sudo gem install --no-rdoc --no-ri mysql -v 2.7 -- --with-mysql-dir=/usr/local --with-mysql-config=/usr/local/mysql/bin/mysql_config
    

    짜잔!

  4. ==============================

    4.당신은 MySQL의 경우 5.5이를 따르 http://geryit.com/blog/2011/01/installing-mysql-with-rails-on-mac-os-x-snow-leopard/

    당신은 MySQL의 경우 5.5이를 따르 http://geryit.com/blog/2011/01/installing-mysql-with-rails-on-mac-os-x-snow-leopard/

    FTR : 나는 내가 identitcal 대답을 upvoted 것 upvote에 몇 가지 바보 대표가 필요하지 않은 경우, 내 upvote에이를 고려하십시오.

  5. ==============================

    5.예, 저도 같은 존재하지 않는 클래스 MysqlCompat을 찾고, 비슷한 오류 메시지를보고 :: MysqlRes을

    예, 저도 같은 존재하지 않는 클래스 MysqlCompat을 찾고, 비슷한 오류 메시지를보고 :: MysqlRes을

    그것이 나오는 것에 따라, 그 클래스가 존재하지 않아야; 오류 메시지가 최신 MySQL의 드라이버에 문제가 발생합니다. MySQL의-2.8.1는 말에 'MySQL을'의 여분의 수준이라는 디렉토리 내 도서관을 찾았다. 예를 들어, (맥 OS X 10.5.8에서) 내 라이브러리는 / usr / 지방 / mysql을 / lib에,하지만 MySQL의 라이브러리에 대한 mysql.bundle 라이브러리 외모에서의 경우 / usr / local / mysql / lib 디렉토리 / mysql을 ...에 이는 잘못된 것입니다.

    I는 / usr / local / mysql을 / lib 디렉토리라는 이름의 'MySQL을'점에 심볼릭 링크를 생성하여, 수정에 쉽게 충분히 발견 '.'

    라이브러리는 여분의 깊이에서 참조하는 때, 그들은 발견하고 작업한다. 이것은 확실히 해킹; 나는이 문제를 해결하기 위해 더 적절한 방법이 있습니다 확신 해요. 내가 다른 것들로에 얻을 수 있도록 그냥 작업에 필요합니다.

    또한,이 당신을 위해 작동하지 않을 수 있습니다. 당신의 오류가 보이는 경우 일 가능성이 높습니다 :

      ./mysql.bundle: dlopen(./mysql.bundle, 9): Library not loaded: /usr/local/mysql/lib/mysql/libmysqlclient.15.dylib (LoadError)
      Referenced from: /Users/ccullen/Projects/npapp-v2/mysql-ruby-2.8.1/mysql.bundle
      Reason: image not found - ./mysql.bundle
        from test.rb:5
    

    이것은 최근에 개발 된 것 같다 나는 그것에 직접적인 반응을 보지 못했다 때문에, 나는 내가 그것을 해결하는 방법을 공유하고자합니다. 행운을 빕니다 :)

  6. ==============================

    6.보석 -v = 2.7.1뿐만 아니라 그것을 해결됩니다 설치합니다.

    보석 -v = 2.7.1뿐만 아니라 그것을 해결됩니다 설치합니다.

  7. ==============================

    7.모든 심볼릭 링크가 필요없이 보석에 적절한 ARCHFLAGS 설정 (재) 설치 .. 저를 도와 :

    모든 심볼릭 링크가 필요없이 보석에 적절한 ARCHFLAGS 설정 (재) 설치 .. 저를 도와 :

    http://joergbattermann.tumblr.com/post/181479575/fixing-the-nameerror-uninitialized-constant

  8. ==============================

    8.이 문제는 10.04로 9.10에서 우분투를 업그레이드 한 후, 나와 함께 나타났다.

    이 문제는 10.04로 9.10에서 우분투를 업그레이드 한 후, 나와 함께 나타났다.

    MySQL의 보석에 문제가 나타납니다.

    증상 : MySQL의에 연결해야 액티브의 사용은에서 오는 스택 추적 산출 "초기화되지 않은 상수의 MysqlCompat을 :: MysqlRes"

    나는 "보석 업데이트 mysql을"을 시도하고 컴파일러가 mysql_client 라이브러리를 찾을 수 없기 때문에 내가 네이티브 확장을 만들 수 없다는 것을 발견했다. 즉, 라이브러리 (libmysqlclient.so.16가)에서는 / usr / lib에 앉아있다.

    우분투 10.04에 대한 수정 :

    루트로, 나는이했다 :

    apt-get install libmysqlclient-dev
    gem install mysql
    

    나는 여러 사람들이 여기 일을 시도하는 알 우리는 근본 원인을 찾기하지 않는 경우 궁금하다.

    사람들이 자신의 대답에 명확하게 할 필요가 변수 :

  9. ==============================

    9.MySQL의 보석 (2.8.1)와 나는 얻고 있었다

    MySQL의 보석 (2.8.1)와 나는 얻고 있었다

    완벽와 MySQL을 설치하는 데 브루를 사용하는 사람들을 위해 작동 2.7 메이크업을 -v 사용

    필요한 경우이 MySQL의 버전을 변경할 수 있습니다.

  10. ==============================

    10.sudo는 보석 설치 mysql을 -v 2.7 트릭을 할해야 ...

    sudo는 보석 설치 mysql을 -v 2.7 트릭을 할해야 ...

  11. ==============================

    11.sudo는 보석 설치 mysql을 -v 2.7 - 나의 새로운 스노우 레오파드 노트북에 이상 마이그레이션 할 때 --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config는 나를 위해 트릭을했다. 내가 MySQL을 설치하는 MacPorts를 사용하지만 오히려 바이너리를, 그리고 아치 플래그 솔루션 또는 심볼릭 링크와 운이 없었하지 않았다.

    sudo는 보석 설치 mysql을 -v 2.7 - 나의 새로운 스노우 레오파드 노트북에 이상 마이그레이션 할 때 --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config는 나를 위해 트릭을했다. 내가 MySQL을 설치하는 MacPorts를 사용하지만 오히려 바이너리를, 그리고 아치 플래그 솔루션 또는 심볼릭 링크와 운이 없었하지 않았다.

  12. ==============================

    12.나는 다른 여기에 모든 노력을하지만, 여전히 문제가있어. 5.1 MySQL의 5.5에서 다운 그레이드 나를 위해 그것을 해결했습니다. (맥 OS X 10.6.5)

    나는 다른 여기에 모든 노력을하지만, 여전히 문제가있어. 5.1 MySQL의 5.5에서 다운 그레이드 나를 위해 그것을 해결했습니다. (맥 OS X 10.6.5)

  13. ==============================

    13.(5.9)에서 다운 그레이드는 5.1 MySQL과 mysql2 보석을 모두 실행 ... 10.6에 도움이 MySQL로.

    (5.9)에서 다운 그레이드는 5.1 MySQL과 mysql2 보석을 모두 실행 ... 10.6에 도움이 MySQL로.

  14. ==============================

    14.MySQL의 및 mysql2 보석을 모두 루비 1.9.2 단지 업데이트 루비 작업과 당신이 필요로하는 보석을 설치합니다.

    MySQL의 및 mysql2 보석을 모두 루비 1.9.2 단지 업데이트 루비 작업과 당신이 필요로하는 보석을 설치합니다.

  15. ==============================

    15.

    gem uninstall mysql
    
    gem install mysql -v 2.7 -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
    
    ldconfig /usr/local/mysql/lib/mysql
    
    RAILS_ENV=production rake db:migrate --trace
    

    이것은 나를 위해 일했다.

  16. ==============================

    16.

    sudo apt-get install libmysqlclient15-dev
    
  17. ==============================

    17.나는 위의 모든 시도하고 그들 중 누구도 하나 나를 위해 작동하지 않습니다. MySQL의 버전 2.7을 설치하려고 할 때, 나는 오류가 발생합니다 :

    나는 위의 모든 시도하고 그들 중 누구도 하나 나를 위해 작동하지 않습니다. MySQL의 버전 2.7을 설치하려고 할 때, 나는 오류가 발생합니다 :

    sudo gem install -v=2.7.1 mysql -- --with-mysql-dir=/usr/local/mysql-5.1.39-osx10.5-powerpc/bin/mysql_config
    ERROR:  could not find gem mysql locally or in a repository
    F107PHD:stepgreen.org tdillahu$ sudo gem install -v=2.7 mysql -- --with-mysql-dir=/usr/local/mysql-5.1.39-osx10.5-powerpc/bin/mysql_config
    Building native extensions.  This could take a while...
    ERROR:  Error installing mysql:
        ERROR: Failed to build gem native extension.
    
    /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb --with-mysql-dir=/usr/local/mysql-5.1.39-osx10.5-powerpc/bin/mysql_config
    checking for mysql_query() in -lmysqlclient... no
    checking for main() in -lm... no
    checking for mysql_query() in -lmysqlclient... no
    checking for main() in -lz... no
    checking for mysql_query() in -lmysqlclient... no
    checking for main() in -lsocket... no
    checking for mysql_query() in -lmysqlclient... no
    checking for main() in -lnsl... no
    checking for mysql_query() in -lmysqlclient... no
    *** extconf.rb failed ***
    Could not create Makefile due to some reason, probably lack of
    necessary libraries and/or headers.  Check the mkmf.log file for more
    details.  You may need configuration options.
    
    Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
        --with-mysql-config
        --without-mysql-config
        --with-mysql-dir
        --with-mysql-include
        --without-mysql-include=${mysql-dir}/include
        --with-mysql-lib
        --without-mysql-lib=${mysql-dir}/lib
        --with-mysqlclientlib
        --without-mysqlclientlib
        --with-mlib
        --without-mlib
        --with-mysqlclientlib
        --without-mysqlclientlib
        --with-zlib
        --without-zlib
        --with-mysqlclientlib
        --without-mysqlclientlib
        --with-socketlib
        --without-socketlib
        --with-mysqlclientlib
        --without-mysqlclientlib
        --with-nsllib
        --without-nsllib
        --with-mysqlclientlib
        --without-mysqlclientlib
    
    
    Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/mysql-2.7 for inspection.
    Results logged to /Library/Ruby/Gems/1.8/gems/mysql-2.7/gem_make.out
    

    내 원래 오류 : 아케 중단! 초기화되지 않은 상수 MysqlCompat :: MysqlRes /vendor/rails/activesupport/lib/active_support/dependencies.rb:440:in load_missing_constant ' '/vendor/rails/activesupport/lib/active_support/dependencies.rb:80:inconst_missing

  18. ==============================

    18.난 그냥 MySQL의 보석을 제거하고 다시 설치하여 고정 페도라 12.에 페도라 10에서 업그레이드 한 후 같은 문제가 있었다. 그래서 MySQL의 새 버전을 준수합니다.

    난 그냥 MySQL의 보석을 제거하고 다시 설치하여 고정 페도라 12.에 페도라 10에서 업그레이드 한 후 같은 문제가 있었다. 그래서 MySQL의 새 버전을 준수합니다.

  19. ==============================

    19.sudo는 보석 mysql을 -v 2.7 설치 - --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config을

    sudo는 보석 mysql을 -v 2.7 설치 - --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config을

    완벽하게 나를 위해 일했다 :)

  20. ==============================

    20.맥 OS X 10.6.4, 나는 아키텍처 및 구성 디렉토리를 지정했다 :

    맥 OS X 10.6.4, 나는 아키텍처 및 구성 디렉토리를 지정했다 :

    sudo는 ENV ARCHFLAGS = "- 아치 x86_64에"- --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config 보석 MySQL을 설치

  21. ==============================

    21.당신의 MySQL의 버전이 5.5 인 경우 당신은 그것을 제거해야합니다. 난 그냥 루비와 MySQL의 사용에 대한 기사를 왼쪽 : http://geryit.com/blog/2011/01/installing-mysql-with-rails-on-mac-os-x-snow-leopard/

    당신의 MySQL의 버전이 5.5 인 경우 당신은 그것을 제거해야합니다. 난 그냥 루비와 MySQL의 사용에 대한 기사를 왼쪽 : http://geryit.com/blog/2011/01/installing-mysql-with-rails-on-mac-os-x-snow-leopard/

  22. ==============================

    22.이것은 나를 위해 일한 것입니다. 나는 게시물의 톤을 읽고 시스템을 사용하여 비 호환성 문제를 일으키는 설치 루비 발견 :

    이것은 나를 위해 일한 것입니다. 나는 게시물의 톤을 읽고 시스템을 사용하여 비 호환성 문제를 일으키는 설치 루비 발견 :

  23. ==============================

    23.

    sudo env ARCHFLAGS="-arch x86_64" gem install mysql
    

    MySQL의 사이트 ddone에서 DMG 패키지!

  24. ==============================

    24.

    sudo gem install mysql -v 2.7 -- --with-mysql-config=/usr/local/mysql/bin/mysql_config 
    

    아치 플래그와 심볼릭 링크는 일부러 경우도 나를 위해 일한! 감사!!

  25. ==============================

    25.어떻게 MySQL의 종속성 mms2r 관련이있다? 나는 BTW의 mms2r 저자입니다.

    어떻게 MySQL의 종속성 mms2r 관련이있다? 나는 BTW의 mms2r 저자입니다.

    mms2r gemspec https://github.com/monde/mms2r/blob/master/mms2r.gemspec는 MySQL의 의존성을 나열하지 않습니다.

  26. from https://stackoverflow.com/questions/1332207/uninitialized-constant-mysqlcompatmysqlres-using-mms2r-gem by cc-by-sa and MIT license