-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Package dependency when building on debian #635
Comments
Hmmm, that's interesting. The ANTLR2 stuff is part of our source code. We bundle it with the rest of our source here, and it's supposed to be found automatically by cmake. https://github.com/sqlitebrowser/sqlitebrowser/tree/master/libs/antlr-2.7.7 Just as a curiosity thing, what happens if you run qmake instead of cmake? |
Hi If I run If I run
Doing
Could it be a path issue? You have
and this is a relative path, I guess relative to current running directiory and not necessarily to Do you usually generate the cmake-Makefile on the same directory as the source code? |
Yeah, it could be a path issue. With cmake, it kind of has a macro like language, so the "if(NOT ANTLR2 ..." clause you're talking about here shouldn't trigger, because it's coming after this line here:
That "find_package()" macro runs this code, which seems to be where the problem is: https://github.com/sqlitebrowser/sqlitebrowser/blob/master/cmake/FindAntlr2.cmake The trick will be figuring out what and why. 😉 |
Btw, with qmake, run it in the main (root) checked out sqlitebrowser git source dir, then run
Note that sometimes when compiling this way on OSX it barfs after a while with an error about missing language translation files. Running |
Oh man, I'm stupid, I only executed Now I get
That's strange
Last time I had a // edit: when compiling with cmake, |
I'll take a look at that later when I get back home (right now @work). I have some projects using CMake, I have some experience with it. |
Sure no worries at all. Wonder if this is somehow showing up a weird gcc bug or something? |
I'm not sure, I think I have a problem with my RAM. I'll let memtest run over the weekend. When I use As I said, I'll let run |
Yeah, that does sound kind of weird. 😦 |
@PSE-AG How did this go? |
I didn't forget this issue but I was on holiday and this week has been crazy, lots of deadlines. I executed memtest over the weekend as I planned, it run more than 60 hour straight without interruptions and not a single error was found. I don't know why gcc fails with segfaults. I'm still running on a debian 7. I will install debian 8 on virtualbox and see if I can reproduce the same results. |
Thanks. Please keep us posted. 😄 |
@PSE-AG Any luck with this? 😄 |
Hi I'm so sorry, I have been terribly busy in the last couple of weeks and I had an operation two weeks ago and have been recovering since then. I did find out however that the reason I got the segfaults was not my RAM or debian buildchain. Some time ago I installed linuxbrew because I wanted to test something. linuxbrew compiled a glibc, gcc and other packages on its own and put them at the front of PATH. I haven't realized that until I was compiling something for one client of ours and I constantly got segfaults. That's when I executed gcc --version and I got a segfault as well. Then I realized that I was executing the gcc from linuxbrew the whole time. Since then I haven't had the time to experiment with that. But I haven't forgotten it :) |
No worries at all. 😄 Healing well, and getting better is definitely of much higher importance. 😁 |
So, I make a git clone and the current commit is I first tried I also tried The only issue I have is that the UI is to aggressive with the focus. If the UI loses focus, it regains automatically again, and this is a problem when you have virtual desktops, because the moment you change to another virtual desktop/screen and the UI loses focus, it regains focus and you jump back at the virtual desktop you've started the UI. I use fluxbox with at 12 virtual screens where every virtual screen has something running. While te UI runs, I'm unable to switch to the other screens. |
Cool, making progress. 😄 With the a) Warning message about it not being found, but DB4S compiles + works ok anyway With a), it can be ignored. It turns out there there are two different approaches for finding ANTLR2 in our CMake configuration, one of them is a fallback to the other. The "ANTLR2 warning but still compiles" situation happens when one of the approaches doesn't work (generating a warning), but the other one does (without giving a "found it!" message 😦 ). With b) above... that's when it really can't be found. You're not hitting that though, so it sounds like the build step is working "good enough" for you now. 😄 With the focus problem, that's interesting. It's not something I remember anyone mentioning before. It's probably an unexpected interaction from something... but figuring out what exactly is the next challenge. 😄 As a first thought, would you be ok to try compiling against our If the focus problem doesn't happen with the |
Hi the |
@PSE-AG How'd this go? 😉 |
@justinclift: it's me, same person, different account (my personal). I've made an update in gentoo (dev-db/sqlitebrowser-3.8.0) and it works normal, I can change the to my virtual desktops when I've compiled the |
@shaoran Thanks. 😄 Just to confirm I'm reading that correctly:
Is that right? |
No,
|
Thanks, now it's clear. It's something we've done between the 3.8.0 and 3.9.0 releases, and it's still happening. Damn. 😦 |
We can probably take a brute force approach to working out why. (eg manual bisect) It's a bit time consuming, although very effective. I won't have time for it personally for at least the next fortnight though. 😦 |
Sounds like the focus problem is the same as in #934. But the bi-sected commits mentioned there are from a later date. Maybe it's a connection of multiple things causing this behaviour, I don't know. Either way, if anybody feels like bi-secting this (earlier) problem, please do so 😃 |
Hi, I can confirm this issue is still present as of commit 425bfa1.
|
@EmperorArthur Try running |
Yep, the error message just means that no Antlr2 development files provided by your distribution were found. In that case we just fall back to the Antlr2 library which is included in our repository. So it's safe to just run However, if you have the Antlr2 lib and dev packages installed and you still see that error message, then that's probably a bug in our cmake file which is worth investigating 😄 |
The program still compiled, but I spent a bit of time googling around until I found this issue page. If the warning is meant to be ignored, it might be worth it to have the cmake file print out a note. We've all been trained to treat these sorts of warnings as important. It's really confusing ignoring it. Especially since all the other dependency warnings will cause compilation issues. |
I see 😄 I've just changed our cmake script to not print this warning and just silently use the copy of Antlr that's provided in our repository. |
@EmperorArthur Would you be ok to try compiling again, using the latest git source, to verify the compile process is warning free for you now? 😄 |
Confirmed fixed.
|
Awesome! Thanks for checking and letting us know @EmperorArthur. 😄 |
@PSE-AG The problem with DB4S being too aggressive with it's focus has likely just been fixed in our source code with #1168. Would you have the time/interest to compile and verify it from your point of view? 😄 |
Hi
I'm currently running on a debian 7.11, cmake version 2.8.9 and tried to compile the package by myself.
I checked https://github.com/sqlitebrowser/sqlitebrowser/blob/master/BUILDING.md and made sure that build-essential, cmake, libqt4-dev and libsqlite3-dev are installed.
I'm building it with USE_QT5=OFF. ccmake shows
Which debian package would satisfy that?
I continued the process and executed
make
but it stops atIs there any other package besides
libqt4-dev
that is needed there?The text was updated successfully, but these errors were encountered: