[RUBY-ON-RAILS] 초기화되지 않은 상수의 MysqlCompat : (mms2r 보석을 사용하여) MysqlRes
RUBY-ON-RAILS초기화되지 않은 상수의 MysqlCompat : (mms2r 보석을 사용하여) MysqlRes
새로운 서버에 광산의 레일 응용 프로그램을 이동하고 몇 보석 종속성을 설치했다. 그러나, 나는 오류를 얻을 MySQL의 보석을 설치 한 후, 초기화되지 않은 상수는 MysqlCompat :: MysqlRes를, 내가 MySQL 데이터베이스를 포함하는 레이크 명령을 실행하려고 할 때마다. 내가 mms2r 보석을 필요로 할 때 나는 단지이 오류가 보인다. 누구도 들어 본 적이 있습니까? 나는 MySQL의에게 2.8.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.기본적으로 문제는 발견 할 수없는 동적 라이브러리 libmysqlclient이다. 위의 솔루션은 작동하지만 그들에게 언제든지 당신의 MySQL의 새 버전을 설치할 때 보석을 다시 작성하거나 다시 적용해야합니다.
기본적으로 문제는 발견 할 수없는 동적 라이브러리 libmysqlclient이다. 위의 솔루션은 작동하지만 그들에게 언제든지 당신의 MySQL의 새 버전을 설치할 때 보석을 다시 작성하거나 다시 적용해야합니다.
다른 방법은 동적 하중 경로에 라이브러리를 포함하는 MySQL의 디렉토리를 추가하는 것입니다. 문제는 내의 .bashrc 파일에 다음과 같은 해결했다 퍼팅 :
export DYLD_LIBRARY_PATH="/usr/local/mysql/lib:$DYLD_LIBRARY_PATH"
-
==============================
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.당신은 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.예, 저도 같은 존재하지 않는 클래스 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.보석 -v = 2.7.1뿐만 아니라 그것을 해결됩니다 설치합니다.
보석 -v = 2.7.1뿐만 아니라 그것을 해결됩니다 설치합니다.
-
==============================
7.모든 심볼릭 링크가 필요없이 보석에 적절한 ARCHFLAGS 설정 (재) 설치 .. 저를 도와 :
모든 심볼릭 링크가 필요없이 보석에 적절한 ARCHFLAGS 설정 (재) 설치 .. 저를 도와 :
http://joergbattermann.tumblr.com/post/181479575/fixing-the-nameerror-uninitialized-constant
-
==============================
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.MySQL의 보석 (2.8.1)와 나는 얻고 있었다
MySQL의 보석 (2.8.1)와 나는 얻고 있었다
완벽와 MySQL을 설치하는 데 브루를 사용하는 사람들을 위해 작동 2.7 메이크업을 -v 사용
필요한 경우이 MySQL의 버전을 변경할 수 있습니다.
-
==============================
10.sudo는 보석 설치 mysql을 -v 2.7 트릭을 할해야 ...
sudo는 보석 설치 mysql을 -v 2.7 트릭을 할해야 ...
-
==============================
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.나는 다른 여기에 모든 노력을하지만, 여전히 문제가있어. 5.1 MySQL의 5.5에서 다운 그레이드 나를 위해 그것을 해결했습니다. (맥 OS X 10.6.5)
나는 다른 여기에 모든 노력을하지만, 여전히 문제가있어. 5.1 MySQL의 5.5에서 다운 그레이드 나를 위해 그것을 해결했습니다. (맥 OS X 10.6.5)
-
==============================
13.(5.9)에서 다운 그레이드는 5.1 MySQL과 mysql2 보석을 모두 실행 ... 10.6에 도움이 MySQL로.
(5.9)에서 다운 그레이드는 5.1 MySQL과 mysql2 보석을 모두 실행 ... 10.6에 도움이 MySQL로.
-
==============================
14.MySQL의 및 mysql2 보석을 모두 루비 1.9.2 단지 업데이트 루비 작업과 당신이 필요로하는 보석을 설치합니다.
MySQL의 및 mysql2 보석을 모두 루비 1.9.2 단지 업데이트 루비 작업과 당신이 필요로하는 보석을 설치합니다.
-
==============================
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.
sudo apt-get install libmysqlclient15-dev
-
==============================
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.난 그냥 MySQL의 보석을 제거하고 다시 설치하여 고정 페도라 12.에 페도라 10에서 업그레이드 한 후 같은 문제가 있었다. 그래서 MySQL의 새 버전을 준수합니다.
난 그냥 MySQL의 보석을 제거하고 다시 설치하여 고정 페도라 12.에 페도라 10에서 업그레이드 한 후 같은 문제가 있었다. 그래서 MySQL의 새 버전을 준수합니다.
-
==============================
19.sudo는 보석 mysql을 -v 2.7 설치 - --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config을
sudo는 보석 mysql을 -v 2.7 설치 - --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config을
완벽하게 나를 위해 일했다 :)
-
==============================
20.맥 OS X 10.6.4, 나는 아키텍처 및 구성 디렉토리를 지정했다 :
맥 OS X 10.6.4, 나는 아키텍처 및 구성 디렉토리를 지정했다 :
sudo는 ENV ARCHFLAGS = "- 아치 x86_64에"- --with-mysql을 - 설정 = / usr / 지방 / mysql을 / 빈 /되는 mysql_config 보석 MySQL을 설치
-
==============================
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.이것은 나를 위해 일한 것입니다. 나는 게시물의 톤을 읽고 시스템을 사용하여 비 호환성 문제를 일으키는 설치 루비 발견 :
이것은 나를 위해 일한 것입니다. 나는 게시물의 톤을 읽고 시스템을 사용하여 비 호환성 문제를 일으키는 설치 루비 발견 :
-
==============================
23.
sudo env ARCHFLAGS="-arch x86_64" gem install mysql
MySQL의 사이트 ddone에서 DMG 패키지!
-
==============================
24.
sudo gem install mysql -v 2.7 -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
아치 플래그와 심볼릭 링크는 일부러 경우도 나를 위해 일한! 감사!!
-
==============================
25.어떻게 MySQL의 종속성 mms2r 관련이있다? 나는 BTW의 mms2r 저자입니다.
어떻게 MySQL의 종속성 mms2r 관련이있다? 나는 BTW의 mms2r 저자입니다.
mms2r gemspec https://github.com/monde/mms2r/blob/master/mms2r.gemspec는 MySQL의 의존성을 나열하지 않습니다.
from https://stackoverflow.com/questions/1332207/uninitialized-constant-mysqlcompatmysqlres-using-mms2r-gem by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 레일에 jQuery를 포스트 (0) | 2020.03.02 |
---|---|
[RUBY-ON-RAILS] 어떻게 한 도메인에서 다른 도메인으로 리디렉션하는 레일 경로를 사용할 수 있습니까? (0) | 2020.03.02 |
[RUBY-ON-RAILS] 루비의 URL의 리디렉션을 받기 (0) | 2020.03.02 |
[RUBY-ON-RAILS] 레일 모델에 외래 키 추가 (0) | 2020.03.02 |
[RUBY-ON-RAILS] JSON으로 설정 RSpec에 기본 GET 요청 형식 (0) | 2020.03.02 |