나는했다 sqlite3
우분투에 설치 패키지 및 readline에 대한 지원은 없습니다. 즉, 명령 기록이 없으며 readline이 제공하는 다른 멋진 기능이 있습니다.
구성 또는 패키징 문제입니까? 즉시 패키지 지원을 제공 할 수있는 다른 패키지 아카이브가 있습니까? 아니면 sqlite3을 readline 지원을 사용하도록 직접 컴파일하려면 어떻게해야합니까?
답변
항상 rlwrap을 사용할 수 있습니다.
rlwrap sqlite3 database.db
참고로, 방금 hardy heron 설치를 확인했으며 sqlite3에는 readline 지원이 있습니다.
답변
Google 에서 ” ubuntu sqlite3 readline “에 대한 첫 번째 조회이므로 다른 답변을 추가합니다 .
Android SDK는 자체 sqlite3
바이너리 버전을 설치합니다 . 이 바이너리는 readline
지원 하지 않습니다 . Android SDK를 경로에 추가하면 readline
지원 이 없다고 생각할 수 있습니다 . 실제로 모든 Ubuntu 패키지는 readline
지원 으로 컴파일됩니다 .
동일한 상황을 설명하는 이 Ubuntu 버그 보고서 도 참조하십시오 .
답변
- https://www.sqlite.org/download.html(sqlite-amalgamation-nnnnnnn.zip ) 에서 C 소스 코드가 포함 된 zip 파일을 다운로드하십시오.
- shell.c, sqlite3.c 및 .h 파일을 얻으려면 압축을 푸십시오.
-
아직 설치되지 않은 경우 libreadline 및 libncurses를 설치하십시오. Ubuntu Linux에서 아래 명령을 실행하여 설치하십시오.
sudo apt 설치 libreadline-dev libncurses-dev
-
아래 명령을 실행하여 빌드하십시오.
gcc -DSQLITE_ENABLE_FTS5 -DHAVE_READLINE shell.c sqlite3.c -lpthread -ldl -lm -lreadline -lncurses -o sqlite3
참고 : readline 기능을 사용하려면 -DHAVE_READLINE 및 -lreadline 및 -lncurses가 필요합니다.
sqlite3 바이너리를 / usr / bin에 복사하거나 경로에 추가하십시오.
답변
나는 이것으로 내 바이너리를 컴파일 할 수 있었다.
SQLite 다운로드 페이지 에서 “autoconf”소스 파일을 다운로드하십시오 . tar를 압축 해제하고 압축을 풀고 소스 디렉토리로 변경하십시오.
다음을 사용하여 소스 코드를 컴파일하십시오.
./configure --enable-readline
make
RedHat에서 실행 중이므로 yum install readline-devel
미리 실행해야했습니다 . 컴퓨터와 다를 수 있습니다.