bepaald / signalbackup-tools

Tool to work with Signal Backup files.
GNU General Public License v3.0
790 stars 38 forks source link

I have sqlite3 installed but getting "sqlite3.h: No such file or directory" #70

Closed LMurphy001 closed 2 years ago

LMurphy001 commented 2 years ago

Greetings!

I am running Ubuntu 20.04.4 LTS on WSL2 on Windows 10 Pro. I am new to Linux. I just installed this WSL Ubuntu installation earlier today.

I installed openssl using sudo apt install openssl libssl-dev

I installed sqlite3 using sudo apt install sqlite3

sqlite3 --version 3.31.1 2020-01-27 19:55:54 3bfa9cc97da10598521b342961df8f5f68c7388fa117345eeb516eaa837balt1

When I run bash BUILDSCRIPT.sh I get:

BUILDING (1/98): /usr/bin/g++ -c -Wall -Wextra -Wshadow -Wold-style-cast -Woverloaded-virtual -pedantic -std=c++2a -O3 -march=native -flto -o "cryptbase/o/cryptbase.o" "cryptbase/cryptbase.cc" BUILDING (2/98): /usr/bin/g++ -c -Wall -Wextra -Wshadow -Wold-style-cast -Woverloaded-virtual -pedantic -std=c++2a -O3 -march=native -flto -o "cryptbase/o/getbackupkey.o" "cryptbase/getbackupkey.cc" BUILDING (3/98): /usr/bin/g++ -c -Wall -Wextra -Wshadow -Wold-style-cast -Woverloaded-virtual -pedantic -std=c++2a -O3 -march=native -flto -o "cryptbase/o/getcipherandmac.o" "cryptbase/getcipherandmac.cc" BUILDING (4/98): /usr/bin/g++ -c -Wall -Wextra -Wshadow -Wold-style-cast -Woverloaded-virtual -pedantic -std=c++2a -O3 -march=native -flto -o "memfiledb/o/statics.o" "memfiledb/statics.cc" In file included from memfiledb/statics.cc:20: memfiledb/memfiledb.h:23:10: fatal error: sqlite3.h: No such file or directory 23 | #include | ^~~ compilation terminated.

Do I have the wrong sqlite3 installed? Any pointers on how to troubleshoot this? Thank you!

LMurphy001 commented 2 years ago

I ran the following:

sudo apt-get install libsqlite3-dev

and re-ran bash BUILDSCRIPT.sh

I got no additional compilation errors, and the linking command gave no errors. So, fingers crossed...

bepaald commented 2 years ago

Hi, thanks for our report. Yes, it's quite common for Linux distributions to split packages in a binary package and a separate development package (containing the headers). There actually used to be a note about it in the readme, but it is so commonly known (to Linux users obviously) and so different among distro's (some do not split at all, those that do all have their own naming conventions for the dev-package), that I felt I could remove that from the readme. Obviously, being completely new to Linux you did not know about it, but you still managed to sort it out yourself in no time at all.

Just as an aside, there are - in my opinion - many many good reason to run Linux and also good reasons to compile programs yourself, but just in case you only installed Ubuntu to use this program: an up-to-date Windows executable is always available on the releases page here: https://github.com/bepaald/signalbackup-tools/releases

Thanks again, let me know if you need more help.