Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

'Mysql के लिए अपरिभाषित विधि init:कक्षा'

मेरे पास रेल 3.1-आरसी 4, MySQL 5.5.15 (बस अपग्रेड किया गया), और मैक ओएस एक्स शेर है। मेरी समस्या यह निकली कि mysql_api.bundle फ़ाइल सही libmysqlclient.18.dylib फ़ाइल से लिंक की गई थी, लेकिन उसे लाइब्रेरी नहीं मिली:

otool -L ~/.rvm/gems/ruby-1.9.2-p180/gems/mysql-2.8.1/lib/mysql_api.bundle 
/Users/rowland/.rvm/gems/ruby-1.9.2-p180/gems/mysql-2.8.1/lib/mysql_api.bundle:
    /Users/rowland/.rvm/rubies/ruby-1.9.2-p180/lib/libruby.1.9.1.dylib (compatibility version 1.9.1, current version 1.9.1)
    libmysqlclient.18.dylib (compatibility version 18.0.0, current version 18.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.0.0)
    /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)

रनटाइम पर पुस्तकालय नहीं मिला। इसे ठीक करने का मेरा पहला प्रयास LC_RPATH कमांड जोड़ना था, लेकिन वह पर्याप्त नहीं था (शायद इसलिए कि यह सूची के अंत में था)। इसके बजाय मैंने सीधे पुस्तकालय लिंक को बदल दिया:

install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib ~/.rvm/gems/ruby-1.9.2-p180\@rails-3.1/gems/mysql-2.8.1/lib/mysql_api.bundle

अब otool मुझे दिखाता है:

otool -L ~/.rvm/gems/ruby-1.9.2-p180\@rails-3.1/gems/mysql-2.8.1/lib/mysql_api.bundle 
/Users/rowland/.rvm/gems/[email protected]/gems/mysql-2.8.1/lib/mysql_api.bundle:
    /Users/rowland/.rvm/rubies/ruby-1.9.2-p180/lib/libruby.1.9.1.dylib (compatibility version 1.9.1, current version 1.9.1)
    /usr/local/mysql/lib/libmysqlclient.18.dylib (compatibility version 18.0.0, current version 18.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.0.0)
    /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)

और यह सब फिर से खुश है। हालांकि यह केवल मैक ओएस एक्स पर काम करता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP/MYSQL में एक के रूप में दो mysql प्रश्नों को कैसे निष्पादित करें?

  2. XmlHTTPRequest:XML पार्सिंग त्रुटि:कोई तत्व नहीं मिला

  3. MySQL - कॉलम नामों के लिए WHERE क्लॉज में वाइल्डकार्ड का उपयोग कैसे करें?

  4. लारवेल और एडब्ल्यूएस क्लाउडफ्रंट

  5. सेल वॉटरलाइन में कई टेबलों को आबाद करना orm