Tôi gặp SQLite header and source version mismatch
vấn đề khó chịu khi thử chạy SQLite3 trên Ubuntu 13.04. Tôi đã thực hiện theo nhiều đơn đặt hàng khác nhau (và tất cả nhiều lần):
apt-get remove sqlite3 libsqlite3-dev
và cài đặt lạildconfig
- Tổng hợp sqlite từ nguồn bằng
autoconf
tar.gz - Đã thử mọi thứ tôi tìm thấy trên Google ...
Tuy nhiên, tôi không thể tìm ra những gì sai. Tôi đã lãng phí 3 giờ trong cuộc đời mình cho việc này!
Và trên thực tế, tại sao điều sau đây xảy ra:
$ sqlite3
SQLite header and source version mismatch
2010-03-09 19:31:43 4ae453ea7be69018d8c16eb8dabe05617397dc4d
2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668
$ apt-get remove sqlite3
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'sqlite3' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Nếu sqlite3
không được cài đặt, làm sao nó có thể có sự không phù hợp?!
Cập nhật
Phải, nhờ Aaron, giờ tôi đã đi xa
$ locate libsqlite3.so
/usr/local/lib/libsqlite3.so
/usr/local/lib/libsqlite3.so.0
/usr/local/lib/libsqlite3.so.0.8.6
Tôi đã chuyển chúng đến một thư mục tạm thời và bây giờ nhận được
$ sqlite3
The program 'sqlite3' is currently not installed. You can install it by typing:
sudo apt-get install sqlite3
tôi đã làm
$ apt-get install sqlite3
$ apt-get install libsqlite3-dev
Và VẪN nhận được cùng một lỗi không khớp
Và tôi đã xóa các tệp giả sqlite3.h
và sqlite3ext.h
các tệp vẫn còn xung quanh, lặp lại mọi thứ và vẫn gặp sự cố ...
libsqlite3.h
đi loanh quanh đâu đó chưa, và tương tự chuyển chúng vào một thư mục tạm thời. (Có thể là apt
sẽ không ghi đè lên các tệp đó khi cài đặt libsqlite3-dev
.)
sqlite3
không được cài đặt, gọi nó trên dòng lệnh sẽ thất bại. Có lẽ có một bản sao vẫn được cài đặt ở đâu đó, có lẽ còn sót lại từ nỗ lực cài đặt thủ công của bạn; loại bỏ điều đó, xác nhận rằngupdatedb; locate libsqlite3.so
không tìm thấy gì ngoại trừ trong thư mục bản dựng của bạn, sau đó cài đặt lại quaapt-get
.