রেলপথে রুবিতে এই জাতীয় ফাইল - sqlite3 / sqlite3_native (LoadError) লোড করা যায় না


84

যখন আমি রুবি ২.০.০ তে রেলস 4.0.0 ব্যবহার করে সার্ভারের বেসিক ইনস্টলেশন এবং সার্ভারটি শুরু করার চেষ্টা করি তখন আমি নীচের ত্রুটি বার্তার মুখোমুখি হয়েছি।

/usr/local/lib/ruby/gems/2.0.0/gems/sqlite3-1.3.7/lib/sqlite3.rb:6:in `require': cannot load such file -- sqlite3/sqlite3_native (LoadError)
    from /usr/local/lib/ruby/gems/2.0.0/gems/sqlite3-1.3.7/lib/sqlite3.rb:6:in `rescue in <top (required)>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/sqlite3-1.3.7/lib/sqlite3.rb:2:in `<top (required)>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `require'
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `block (2 levels) in require'
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `each'
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `block in require'
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `each'
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `require'
    from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler.rb:132:in `require'
    from /home/penchal/new/site/config/application.rb:7:in `<top (required)>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:76:in `require'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:76:in `block in <top (required)>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:73:in `tap'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:73:in `<top (required)>'
    from bin/rails:4:in `require'
    from bin/rails:4:in `<main>'

আমি কীভাবে এই ত্রুটি বার্তাটি এড়াতে এবং আরও এগিয়ে যেতে পারি?


আপনি কোন ওএস এ চেষ্টা করছেন?
সাইফিস

উইন্ডোজ সমস্যা বলে মনে হচ্ছে। সমাধান বিভিন্ন হয়। এটি আপনার জন্য স্ট্যাকওভারফ্লো . com/a/6126062/2576857 করবে কিনা দেখুন ।
দুদাদ

4
তবে তিনি উইন্ডো ব্যবহার করছেন বলে মনে হয় না। হয়তো এই নিবন্ধটি সাহায্যের হবে।
আলতাফ হামেজ

ওহ হ্যাঁ, / ইউএসআর / স্থানীয় / ইত্যাদি, এখন দেখেছি আমার খারাপ। আমি যা খুঁজে পেয়েছি, বেশিরভাগ লোকেরা এই সমস্যাটির কারণ স্ক্লাইট ইইক এবং প্যাট ভেরিয়েবলের মধ্যে নন, তবে এটি কেবল উইন্ডো ব্যবহারকারীদের ক্ষেত্রেই ঘটেছিল। আমি মনে করি যে আপনার দেওয়া নিবন্ধটি মাথায় পেরেকটি আঘাত করবে, তবে আসুন অপেক্ষা করুন এবং দেখুন।
দুদাদ

যদি রেল 4 এবং রুবি 2.1। - বর্ণন এখানে
discipleartem

উত্তর:


121

আপনার sqlite3 জেমস্পেক ফাইলটি সন্ধান করুন। একটি উদাহরণ /usr/local/share/gem/specifications/sqlite3-1.3.7.gemspec

উইন্ডোজ: C:\Ruby21\lib\ruby\gems\2.1.0\specifications

আপনার আপনার রুবিজেম পাথ এবং স্ক্লাইট 3 সংস্করণ অনুসারে সামঞ্জস্য করা উচিত। উপরের ফাইলটি সম্পাদনা করুন এবং নিম্নলিখিত লাইনটি সন্ধান করুন

s.require_paths=["lib"]

এটি পরিবর্তন করুন

s.require_paths= ["lib/sqlite3_native"]

7
এটি উইন্ডোজে রেল ব্যবহারকারীদের সংখ্যা বিবেচনা করে কোনও সমস্যার প্রথম ত্রুটি রয়েছে place যদিও এটি ঠিক কেন কাজ করে তা আমি জানতে চাই ...

4
এটি 1.3.9 এর জন্য কাজ করেছে তবে 1.3.11 এর জন্য প্রয়োজনীয় ছিল না। আমি উইন 7 এক্স 64 এ আছি।
কিডকিউইক

4
এটি ইতিমধ্যে উপস্থাপিত হয়েছে এবং ত্রুটি: 'সক্রিয়_আরেকর্ড / সংযোগ_ডাপ্টার / স্ক্লাইট 3_অ্যাডাপ্টার' লোড করা যায়নি। কনফিগারেশন / ডাটাবেস.আইএমএলে অ্যাডাপ্টারটি বৈধ কিনা তা নিশ্চিত করুন। আপনি যদি 'mysql2', 'postgresql' বা 'sqlite3' ছাড়া অন্য কোনও অ্যাডাপ্টার ব্যবহার করেন তবে জেমফাইলে প্রয়োজনীয় অ্যাডাপ্টার মণি যুক্ত করুন।
স্টার্লিং ডিয়াজ

4
অ্যাডাপ্টারের সাথে উপরের ত্রুটিটি সমাধানযোগ্য বলে মনে হচ্ছে না, এইচডিংয়ের নীচে প্রথমে যা প্রস্তাবিত তা করা আমাকে বেশ কিছুটা সময় সাশ্রয় করতে পারে - আবার যদিও, তারা পরবর্তী রিলিজগুলিতে এটি ঠিক করে ফেলবে, বা রেইসইনস্টলারের মতো স্ট্যাকড প্যাকেজগুলিতে এটি ঠিক করবে ( রুবি ২.৩.১ এর সাথে ডেভকিট (বিল্ড সরঞ্জামগুলির সাথে মেশিং), রেল 5.0.0.1) পিএস এটি অবিশ্বাস্য যে 2 বছর পরেও এই সমস্যাটি এখনও থেকেই যায় - স্কেলাইটটি কঙ্কালের ডিফল্ট অ্যাপ্লিকেশনটিতে ডিফল্টরূপে ব্যবহৃত হয় এবং যাওয়ার উপায় মধ্যে guides.rubyonrails.org/getting_started.html
hello_earth

4
দুই বছর? তিন বছর কেমন?
ওয়ারেন পি

19

দেখুন :https://stackoverflow.com/a/39136421/6755206

সৌভাগ্যক্রমে,
অবিরাম চেষ্টা করার পরে, আপনাকে রুবি 2.0 তে স্যুইচ করতে হবে না ...

https://github.com/hwding/sqlite3-ruby-win


পদক্ষেপ

প্রাক

  • gem uninstall sqlite3 --all

উৎস

নির্মাণ

  • নিষ্কাশন দির মধ্যে কমান্ড-লাইন চালান
  • নিশ্চিত হয়ে নিন যে আপনি নিজের সি সংকলক ইনস্টল করেছেন এবং PATH এ যুক্ত করেছেন
  • gem install bundler
  • bundle install
  • rake native gem
  • আপনি 'পিকেজি' নামক একটি দির তৈরি করেছেন

ইনস্টল করুন

  • দির 'পিকেজি' প্রবেশ কর
  • gem install --local sqlite3-xxx.gem ('xxx' হ'ল সংস্করণ কোড)

চেক

  • irb
  • require 'sqlite3'

4
ধন্যবাদ @ হুইডিং এটি পুরোপুরি কাজ করে! আমার ক্ষেত্রে, উইন্ডোজ ব্যবহারকারী, দেখে মনে হচ্ছে দুটি পিকজি-তে দুটি স্কাইলাইট 3 সংস্করণ (32 এবং 64 বিট) সংকলিত হয়েছিল, তবে আমি সবেমাত্র 64 বিটগুলি ইনস্টল করেছি (আমার কেস)।
আওসা

4
হ্যাঁ, অনেক চেষ্টা করার পরেও, এটিই একমাত্র উপায় যা কাজ করেছে .... অন্য ব্যক্তিরা ( reddit.com/r/rails/comments/30s1cz/… ) পুরোপুরি
যোজনার

4
আমি নিশ্চিত করেছি যে এটি উইন্ডোজ 10 এর জন্য কাজ করা একমাত্র সমাধান; বেশ কয়েকটি সংশোধন করার চেষ্টা করেছেন তবে এটিই কেবলমাত্র কাজ করছে।
numeiaweb

4
আমি উল্লিখিত পদক্ষেপগুলি অনুসারে কাজ করেছি, তবে নাম দিয়ে তৈরি কোনও ফোল্ডার আমি দেখতে পাচ্ছি না pkg
যশু মিতল

আমার পক্ষে কাজ you'll find a dir named 'pkg' generatedকরেছি কারণ আমি কোথাও এই জাতীয় ডিরেক্টরি দেখিনি see নীচে অ্যাডসন ম্যামের সমাধানটি আমার পক্ষে কাজ করেছে।
এমএসসি

19

যেহেতু টান অনুরোধ # 229 একত্রিত করা হয়েছে, তাই স্কেলাইট 3 প্রতি git:কী ইনস্টল করা যেতে পারে । আপনার এই সংযোজনের মাধ্যমে সহজেই স্ক্লাইট 3 ব্যবহার করা সম্ভব Gemfile:

gem 'sqlite3', git: "https://github.com/sparklemotion/sqlite3-ruby"

এটি রুবিআইনস্টলার -২.৪ এবং আরও নতুনতে কাজ করে। mingw-w64-x86_64-sqlite3আপনি চালানোর সময় এটি স্বয়ংক্রিয়ভাবে প্রয়োজনীয় প্যাকম্যান প্যাকেজ ইনস্টল করে bundler install

উইন্ডোজে রুবিআইনস্টলার 2 এফএকিউতে উইলগুলিতে রেলের জন্য আরও কয়েকটি ইঙ্গিত রয়েছে ।


4
এই উত্তরটি নতুন রুবি ইনস্টলারগুলির জন্য রুবি সংস্করণ রুবি 2.5.1p57 (2018-03-29 রিভিশন 63029) এবং রেলের সংস্করণ রেলগুলি 5.2.1
কেটিএম

4
এর মধ্যে পিআরটি একীভূত করা হয়েছে। আমি আমার উত্তর অনুসারে আপডেট করেছি।
লার্স কানিস

এসএসএল সমস্যাগুলি সম্পর্কে জানতে আমি ব্যবহার করেছি: রত্ন 'স্ক্লাইট 3', গিট: "গিট: //github.com/sparklemotion/sqlite3-ruby.git"
GrabzIt

13
gem uninstall sqlite3 --all
ridk exec pacman -S mingw-w64-x86_64-sqlite3
gem inst sqlite3 --platform ruby

এটি আমার কাছে সমস্যার সমাধান করেছে।

Windows 10
Ruby 2.5.3
Rails 5.2.2

4
ওএমজি এটি আসল: ডি কেবল এটিই আমার পক্ষে কাজ করে, উইন্ডোজ 10 রোরের জন্য ভয়ঙ্কর। অনেক ধন্যবাদ!
ব্যবহারকারী 987

আমার জন্য কাজ করেছেন। রুবি 2.4 থেকে একটি আপডেটের পরে শুরু আমার সমস্যা Windows এ 2.6 রুবি 10.
knut

এটি আমার জন্য উইন 10 রুবি ২.6 (এক্স )৪) তেও উত্তর ছিল। ধন্যবাদ!
ভার্শিংস্টিক্স

আমাকে আসলে কয়েকবার এটি করতে হয়েছিল। দেখে মনে হচ্ছে যে কোনও সময় আমি bundle installএকটি নতুন রত্ন ইনস্টল করার জন্য কোনও কাজ করব, আমি আবার এই সমস্যাটিতে চলে যাব এবং উপরের পদক্ষেপগুলি পুনরাবৃত্তি করতে হবে।
vercingortix

9

শুধু জেমফিল সম্পাদনা করুন এবং যুক্ত করুন gem 'sqlite3', platform: :ruby


5

উত্সগুলির কোনও সংকলন বা প্রাক-সংকলিত গ্রন্থাগারগুলি ডাউনলোড করা এই সমস্যার সমাধান করবে না, বিশ্বাস করুন আমি সবকিছু চেষ্টা করেছি, সমস্যাটি অন্য কোথাও রয়েছে। এটি উইন্ডোতে এইভাবে কাজ করে:

bundle update sqlite3

নোকোগিরির বিষয়ে আপনি এর পরে আর একটি ত্রুটি পেতে পারেন, কমান্ডটি দিয়ে এটি ঠিক করুন:

bundle update nokogiri

আপনার রুবি অ্যাপটি উপভোগ করুন!




4

সেরা অফিসিয়াল ইনস্টল করুন

আমি রেল 5.2.1p57 ব্যবহার করছি, উইন্ডোজ 10 স্রেফ নিম্নলিখিত লাইনে দৌড়ানো সমস্যাটি কমিয়ে দিয়েছে

gem uninstall sqlite3

এবং ইনস্টল করা সমস্ত সংস্করণ আনইনস্টল করুন। আবার নিম্নলিখিত কমান্ড প্রয়োগ করুন

gem install sqlite3 --platform=ruby

আপনি এখন সম্পন্ন হয়েছে। সমস্যা অব্যাহত থাকলে আমাকে জানান।


3

উপরের উত্তরটি যদি কাজ না করে তবে একটি স্থিতি যা আমি আবিষ্কার করেছি তা হ'ল আপনার জেমফাইলে চলে যাচ্ছে এবং স্কেলাইট 3 এর ঠিক পরে সংস্করণ নম্বর 1.3.11 (1.3.9 এর পরিবর্তে) যুক্ত করা হবে। সুতরাং আপনার জেমফাইলে লাইনটি এখন পড়তে হবে:

# Use sqlite3 as the database for Active Record
gem 'sqlite3',  '1.3.11'

2

আমার রুবি সংস্করণটি 2.5.X এ উন্নীত করার সময় আমার একই ত্রুটি হয়েছিল আমি সনাক্ত করেছিলাম rails task --traceযে স্কেলাইট 3 সংস্করণ 2.5 তে পাওয়া যায় না, আমি আমার জেমফাইলে রত্নটি "স্ক্লাইট 3" পরিবর্তন করে "স্ক্লাইট 3-রুবি" তে পরিবর্তন করি, আমি জহরটি "স্ক্লাইটাইট 3" আনইনস্টল করার পরে এবং শেষ পর্যন্ত আমি চালিত করি bundle install

কারণ কী তা আমি জানি না ... আমি পড়লাম যে "স্ক্লাইট 3" এখনও রুবি 2.5 এর জন্য পাওয়া যায় না, তবে আমি নিশ্চিত নই।


2

এই ত্রুটিটি এড়াতে, নিশ্চিত করুন যে gem sqlite3এটি আপনার গেমফাইলে যুক্ত হয়েছে। তারপরে রুবি'র বিন ফোল্ডারে স্ক্লাইট ডাউনলোড লিঙ্ক থেকে " এক্সি " এবং " ডিএল " গুলি বের করুন । যদি সমস্যা এখনও অব্যাহত থাকে। এটা চেষ্টা কর:

bundle update

gem uninstall sqlite3

Sqlite3 এর একাধিক সংস্করণের মধ্যে একটি পছন্দ দেওয়া, সর্বশেষ বিকল্প 'সমস্ত সংস্করণ' চয়ন করুন। এখানে সর্বশেষ নম্বর লিখুন

আনইনস্টল করার জন্য মণি নির্বাচন করুন:
1. sqlite3-1.3.13
2. sqlite3-1.3.13-x64-mingw32
3. সমস্ত সংস্করণ
> 3

আপনি যদি এই রত্নটি অপসারণ করেন তবে এই নির্ভরতা মেটাবে না।
আনইনস্টল দিয়ে চালিয়ে যাবেন? [yN]
> y

gem install sqlite3 --platform=ruby

rails s

এই কাজ করা উচিত.

উপরোক্ত আপনার পক্ষে যদি কাজ করে তবে আরও ব্যাখ্যার জন্য এই লিঙ্কটির মাধ্যমে পড়ুন ।


1

আমার সাথেও এটি ঘটেছিল। দেখা গেল যে আমি মূলত এসকিউএল 1.3.10 ইনস্টল করেছি, তবে আমি তখন রেল টিউটোরিয়াল স্ক্রিনকাস্ট প্রকল্প থেকে কিছু রত্ন অনুলিপি করেছিলাম এবং এতে এসকিউএলাইট 1.3.9 তালিকাভুক্ত করা হয়েছে। তারপরে আমিও ত্রুটি পেয়েছিলাম। আমি এটিকে আবার 1.3.10 এ পরিবর্তন করেছি এবং এটি কার্যকর হয়েছে।

(এটি উইন্ডোজ on এ I


1

এই গীতহাব ইস্যু পোস্ট থেকে প্রাপ্ত একমাত্র সমাধানটি আমার পক্ষে কাজ করেছে :

  1. থেকে sqlite3 উৎস autoconf সংস্করণটি পান https://www.sqlite.org/download.html
  2. এমএসওয়াইএস শেল শুরু করুন।
  3. আপনার sqlite3 জন্য প্যাক না অবস্থানে, কনফিগার স্ট্যাটিক সংস্করণ শুধুমাত্র পথে ডিএলএল পালন এড়ানোর জন্য: ./configure --disable-shared
  4. তৈরি করুন এবং এটি ইনস্টল করুন: make install DESTDIR=/c/dev/ruby/tmp। আপনি ডিরেক্টরি পরিবর্তন করতে পারেন।
  5. উইন্ডোগুলির কমান্ড প্রম্পটটি ওপেন করুন এবং gem uninstall sqlite3 --allবিদ্যমান সমস্ত স্ক্লাইট 3 রত্নগুলি সরাতে রান করুন ।
  6. আবার উইন্ডোজ, বিল্ড কম্যান্ড প্রম্প্ট এবং sqlite3 মণি ইনস্টল করুন: gem install sqlite3 --platform=ruby -- --with-sqlite3-include=C:\dev\ruby\tmp\usr\local\include --with-sqlite3-lib=C:\dev\ruby\tmp\usr\local\lib। এর মধ্যে অন্তর্ভুক্ত এবং lib ডিরেক্টরিগুলি ভিন্ন হতে পারে, তাই প্রথমে পরীক্ষা করুন।

আমি উইন্ডোজ 10 এ রুবি সংস্করণ 2.5.1 এবং রেল সংস্করণ 5.2.0 ব্যবহার করছি।


এবং রত্নের উত্স ফোল্ডারে জেমস্পেক ফাইল
বিলাল কাদরী

1

আমি এটি পেয়েছি! আমি এই https://www.youtube.com/watch?v=lsrzvX0qzmA দেখেছি
: ইনস্টল: রেল সংস্করণ: 5.2.1 রুবি সংস্করণ: 2.5.3 (x64-mingw32) স্ক্লাইট সংস্করণ 1.3.13
এবং আমার আপনার সমস্যা আছে .. আমার সমাধান:

  1. আপনার ইনস্টল করা ফোল্ডারে সি: \ রুবি 25-x64 \ লিব \ রুবি \ রত্নগুলি \ 2.5.0 \ রত্নগুলি \
    আপনার ফোল্ডার রয়েছে: "sqlite3-1.3.13" "sqlite3-1.3.13-x64-mingw32"

  2. সি ফাইলটি সন্ধান করুন : y রুবি 25-x64 \ লিবিব \ রুবি \ রত্নগুলি \ 2.5.0 \ রত্ন q স্ক্লাইট 3-1.3.13 \ লিব \ স্ক্লাইট 3 \ স্ক্লাইট3_নেটিভ.সো
  3. এটি সিটিতে অনুলিপি করুন: y রুবি 25-x64 \ লিব \ রুবি \ রত্নগুলি \ 2.5.0 \ রত্ন q স্ক্লাইট3-1.3.13-x64-মিংডব 32 \ লিব \ স্ক্লাইট3 \ 2.5 \ স্ক্লাইট3_নেটিভ.সো (ফোল্ডারগুলির অস্তিত্ব থাকতে পারে - তৈরি করুন এবং পেস্ট)

1

আপডেট হয়েছে

আমার জন্য স্থির রত্নখণ্ডকে নীচে যুক্ত করা: মণি 'sqlite3', '1.4.0', প্ল্যাটফর্ম:: রুবি


1

জেমফাইলে এর জন্য আপনার স্ক্লাইট 3 রত্নটি পরিবর্তন করুন:

gem 'sqlite3', git: "https://github.com/larskanis/sqlite3-ruby", branch: "add-gemspec"

তারপরে চালান:

bundle install

0

ওএসএক্স ব্যবহারকারীদের ক্ষেত্রে এটি রুবি পরিচালক (যেমন rvm) ব্যবহারের ফলে আসতে পারে result

আপনি যদি আপনার। / .Bash_profile সম্পাদনা করেন এবং এটি যোগ করেন:

[[ "$APP" = *"/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/"* ]] && {
  echo Xcode detected
  rvm use system
}

আপনি ইস্যুটি নিয়ে কাজ করতে পারেন। আবার তৈরি করার চেষ্টা করার আগে এক্সকোড পুনরায় চালু করুন।

আসল সমস্যাটি এখানে ট্র্যাক করা হয়েছে: https://openradar.appspot.com/28726736 )।

পূর্ণ ক্রেডিট এতে যায়: https://egeek.me/2018/04/14/ipa-export-error-in-xcode-and-ruby/

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.