Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upBuild fails on Linux (Ubuntu) #1474
Comments
This comment has been minimized.
This comment has been minimized.
|
That's strange. It looks like you have installed SQLCipher but not OpenSSL even though that's a dependency of SQLCipher. Have you installed SQLCipher via your package manager or have you compiled it yourself? And do you have the You could also try editing the CMakeLists.txt file in our source code, going to line 381 (the
Not sure if that helps though. |
This comment has been minimized.
This comment has been minimized.
tilusnet
commented
Jul 14, 2018
|
I do have OpenSSL 1.0.2g-1ubuntu4.13 installed, a slightly newer version than the build is insisting on. I'll try your target link hack, cheers. |
This comment has been minimized.
This comment has been minimized.
tilusnet
commented
Jul 14, 2018
|
I managed to build with the CMakeLists.txt hack.
but then it loads. In About... why is my version labelled |
This comment has been minimized.
This comment has been minimized.
|
To add encrypted databases support, SQLCipher comes with its own modified version of SQLite. You can't build SQLCipher comes with whatever version of SQLite they decide to add. I think they wait a little bit before updating their SQLite version. So it is usually not the latest. To find out your SQLite version, try to run Edit: It seems like they have modified |
This comment has been minimized.
This comment has been minimized.
tilusnet
commented
Jul 15, 2018
|
I understand, thank you. I know this is slightly off topic to this ticket, but can you tell me if it is possible to build into the tool a different SQLite version? Is that configurable? (I am aware that certain UI elements may not work as expected as result). |
This comment has been minimized.
This comment has been minimized.
|
In theory, the building process will use which ever version of the SQLite development headers it finds first. So, if you install a custom version of SQLite somewhere (eg /opt/custom_stuff/sqlite) you should be able to edit the CMakeLists.txt file to use that path when it goes looking. It might take a bit of mucking around to get it 100%, but it should be do-able. |
This comment has been minimized.
This comment has been minimized.
|
Out of curiosity, what's the end goal you're wanting to achieve? Just thinking that depending on what you're attempting we might have suggestions on better ways to get it done. No guarantees of course. |
This comment has been minimized.
This comment has been minimized.
tilusnet
commented
Jul 15, 2018
|
Thank you @justinclift . My main objective is to be able to align the Browser to whatever version I am using in development. For dev this is very often the (near) latest SQLite version, right now in Python I am using 3.24.0. Of course one option is to downgrade dev to the Browser's built in SQLite version, but I'd rather have it the other way around. :-) |
This comment has been minimized.
This comment has been minimized.
|
Yep, that makes sense. For your dev stuff, that sounds like you have an install of SQLite 3.24.x someone on your system already (manual install?). That makes me think you should be able to point the CMakeLists.txt file at that, which would then build DB4S using the same SQLite as your dev stuff. |
This comment has been minimized.
This comment has been minimized.
tilusnet
commented
Jul 15, 2018
|
In Python I am using virtual environments, and the I suspect the header redirection is not sufficient and the (static?) libraries are still being picked up from my system (old version). I might take some time updating the SQLite library compiled from source and see if I nail it. PS: |
This comment has been minimized.
This comment has been minimized.
|
Hmmm, from memory the ssl and crypto bits are only used when compiling SQLCipher. One thing worth trying, is going through the CMakeLists.txt file and outright nuking all of the things that refer to SQLCipher. Make sure there's no way SQLCipher could be getting picked up accidentally, and that should solve that ssl/crypto bit. Make sure you backup your CMakeLists.txt first of course, just in case. |
This comment has been minimized.
This comment has been minimized.
|
@karim We asked the SQLCipher devs a while ago to add something which gives us the SQLite version. Not sure if they did though. @tilusnet Here is what you can do: download and compile SQLite in whatever version you want it to be included. Then open the CMakeLists.txt file again and edit to point to the directory of your SQLite version. For that you could try to add it around line 322 by changing it from this:
to this:
Maybe somebody want to add a proper configuration option out of this and put it into a PR? |
This comment has been minimized.
This comment has been minimized.
Hmm, I don't think it's happened yet. @developernotes @sjlombardo ? |
This comment has been minimized.
This comment has been minimized.
developernotes
commented
Jul 16, 2018
|
Hi @justinclift Catching up on this ticket. There are a couple of different options, depending on whether you are referring to compile time vs. runtime. Compile time
Runtime
Does that address the information you are looking for? |
This comment has been minimized.
This comment has been minimized.
|
Thanks @developernotes, that looks perfect. We should be able to update our About dialog with the exactly correct info now. |
This comment has been minimized.
This comment has been minimized.
|
Oh... actually... it seems like |
This comment has been minimized.
This comment has been minimized.
developernotes
commented
Jul 16, 2018
|
Hi @justinclift
|
This comment has been minimized.
This comment has been minimized.
|
I'm sorry, I was wrong. @developernotes is right, Like @developernotes said, to get SQLCipher you should use We should change the info in the About dialog to reflect that. |
This comment has been minimized.
This comment has been minimized.
|
Cool. Sorry for the mix up @developernotes. |
This comment has been minimized.
This comment has been minimized.
developernotes
commented
Jul 16, 2018
|
@justinclift no worries at all, happy to help! |
This comment has been minimized.
This comment has been minimized.
|
It's not so easy unfortunately |
This comment has been minimized.
This comment has been minimized.
|
I think compile time option is the most straightforward approach. Too bad it isn't working.
Sounds good.
In-memory database? |
added a commit
that referenced
this issue
Aug 10, 2018
This comment has been minimized.
This comment has been minimized.
|
I have just changed the version text in the About dialog like discussed. Should be less confusing now @karim You're right |
This comment has been minimized.
This comment has been minimized.
|
Hmmm, if the effort isn't large we should probably do that. |
added a commit
that referenced
this issue
Aug 10, 2018
This comment has been minimized.
This comment has been minimized.
|
Ok, done |



tilusnet commentedJul 14, 2018
Details for the issue
What did you do?
Building
sqlitebrowserfrom source.What did you expect to see?
Build successful.
What did you see instead?
Useful extra information
The info below often helps, please fill it out if you're able to. :)
What operating system are you using?
What is your DB4S version?
Did you also