Skip to content

sqlitebrowser binary is not copied at install #833

Closed

Description

@leventelist

Details for the issue

I configured the code using 'qmake USE_QT5=1 ..'. The code compiles fine, but when I 'make install', the built binary doesn't get to /usr/local/bin. If I copy by hand, the application seems to run fine.

Useful extra information

I'm opening this issue because:

  • DB4S is crashing
  • [x ] DB4S has a bug
  • DB4S needs a feature
  • DB4S has another problem

I'm using DB4S on:

  • Windows: ( version: ___ )
  • [x ] Linux: ( distro:Debian stable )
  • Mac OS: ( version: ___ )
  • Other: ___

I'm using DB4S version:

  • [ x] 3.9.1
  • 3.9.0
  • Other: ___

I have also:

Activity

  1. changed the title [-]sqlitebrowser binary is not coppied at install[/-] [+]sqlitebrowser binary is not copied at install[/+] on Oct 18, 2016
  2. justinclift commented on Oct 18, 2016

    @justinclift
    Member

    Thanks Lev, we'll look into it. 😄

  3. MKleusberg commented on May 8, 2017

    @MKleusberg
    Member

    Sorry for the delay, @leventelist! Can you try again using the latest version from master? This should work now:

    qmake
    make
    make install
    
  4. leventelist commented on May 8, 2017

    @leventelist
    Author
  5. leventelist commented on May 9, 2017

    @leventelist
    Author

    Unfortunately it doesn't compile on my system. I have an up to date Debian Jessie. It seems that my system got too old.

    /usr/include/c++/4.9/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
    #error This file requires compiler and library support for the \

    I try tomorrow on a Debian testing with more recent compiler.

    Lev

  6. justinclift commented on May 9, 2017

    @justinclift
    Member

    @leventelist As a thought, it's probably a good idea to install Qt 5.7 from the Qt.io download site too, then complie DB4S using Qt Creator that comes with that.

    I've been trying things out on Ubuntu 16.04 today, to investigate a few of the issues reported over time. It turns out that Qt versions older than Qt 5.7 have some weird problems. 😦

    Qt 5.7 though seems fine. 😄

  7. leventelist commented on May 9, 2017

    @leventelist
    Author

    Ok. Just a note. Should the cmake/qmake system take care about dependencies? So it shall detect Qt5.7, and refuse to configure the code if it is older.

  8. justinclift commented on May 9, 2017

    @justinclift
    Member

    Sort of. 😄

    When you install Qt 5.7 (eg in ~/Qt by default), it comes with it's own version of qmake. eg somewhere under ~/Qt/5.7/

    If you run that version of qmake, it's supposed to automatically choose the correct Qt 5.7 versions of bits instead of the older ones.

    Hmmm, as a temporary thing which might be helpful, I took a bunch of screenshots earlier today of the Qt install + compile process, but on Ubuntu 16.04. I haven't yet renamed them into sensible things + added good description, but if you follow the sequence by timestamp it be pretty self explanatory:

        https://github.com/sqlitebrowser/db4s-screenshots/tree/master/wiki/ubuntu_16.04

    With the Qt version... it just needs to be version 5.7 or later. Thinking about it now, you might as well pick the latest one (5.8), as there's probably useful extra bug fixes in that anyway. The screenshots are for 5.8 too anyway. But, up to you. 😄

  9. leventelist commented on May 10, 2017

    @leventelist
    Author
  10. justinclift commented on May 10, 2017

    @justinclift
    Member

    Thanks Lev. 😄

    I'm working through some qmake stuff at the moment, and yeah our CMake setup turns out to be more complete for Linux.

    When CMake is used it puts the icon file, metadata, etc in the right places. But our Qmake install doesn't. I'm looking into it now, but it might take a few more days of mucking around with until it's correct. 😄

    I doubt either CMake nor Qmake will detect missing dependencies up front though. It's normally the kind of thing which a configuration file does (eg ./configure, which we don't have)... or the end user when the compile busts. 😁

  11. leventelist commented on May 10, 2017

    @leventelist
    Author

    One of the major user case of cmake is to detect installed packages. .configure (autotool) did the same thing, but it isn't portable (eg. it is a PITA on Windows). I personally use cmake it to detect SQLite. Here is what I do.

    CMakeLists.txt

    I use the same CMakeLists.txt on Linux and FreeBSD, so this is cross platform. I was lazy, and I just detect presence of libsqlite3, but with a small tweak, you can even detect, and require specific major/minor/patch version too.

    I'm sorry if this is not the right place to suggest things.

  12. leventelist commented on May 10, 2017

    @leventelist
    Author

    And I think we can close this issue, since the original problem is solved now. Thanks.

  13. justinclift commented on May 10, 2017

    @justinclift
    Member

    No worries Lev, thanks. 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions