Issue in QT 5.2.1 app in linking libquazip.so library during making .deb package for ubuntu 14.04 - deb

I am making .deb package for the QT 5 .2.1 desktop app for ubuntu 14.04 64 bit. I have installed QT 5.2.1 on Ubuntu 14.04 and made a demo app for the testing purpose in which I have used quazip library. During making the .deb package of the app I am getting the below issue.
dpkg-shlibdeps: error: couldn’t find library libquazip.so.1 needed by debian/demoapp/usr/bin/DemoApp1 (ELF format: ‘elf64-x86-64’; RPATH: ‘’)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/demoapp/usr/bin/DemoApp1 was not linked against libz.so.1 (it uses none of the library’s symbols)
dpkg-shlibdeps: error: cannot continue due to the error above
Note: libraries are not searched in other binary packages that do not have any shlibs or symbols file.
To help dpkg-shlibdeps find private libraries, you might need to use -l.
dh_shlibdeps: dpkg-shlibdeps -Tdebian/demoapp.substvars debian/demoapp/usr/bin/DemoApp1 returned exit code 2
make: * [binary-predeb-IMPL/demoapp] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2
debuild: fatal error at line 1364:
dpkg-buildpackage -rfakeroot -D -us -uc failed
When I copy the libquazip.so.1 at the path /usr/lib in my machine then I got the below issue .
dpkg-shlibdeps: error: no dependency information found for /usr/lib/libquazip.so.1 (used by debian/demoapp/usr/bin/DemoApp1)
dh_shlibdeps: dpkg-shlibdeps -Tdebian/demoapp.substvars debian/demoapp/usr/bin/DemoApp1 returned exit code 2
make: * [binary-predeb-IMPL/demoapp] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2
debuild: fatal error at line 1364:
dpkg-buildpackage -rfakeroot -D -us -uc failed
My cmakelist.txt file as per below.
cmake_minimum_required(VERSION 2.8.9)
project(DemoApp1)
set (CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} “;/opt/Qt5.2.1/5.2.1/gcc_64/lib/cmake;”)
find_package(Qt5Widgets REQUIRED)
include_directories(/home/manojpatidar/Manoj/Work/QT_WORK/Linux_Package/demoapp-1.0/lib/quazip-0.5.1/quazip)
link_directories(/home/manojpatidar/Manoj/Work/QT_WORK/Linux_Package/demoapp-1.0/lib/quazip-0.5.1)
add_executable(DemoApp1 main.cpp mainwindow.cpp moc_mainwindow.cpp mainwindow.ui)
target_link_libraries(DemoApp1 quazip z)
install(TARGETS DemoApp1 RUNTIME DESTINATION bin)
qt5_use_modules(DemoApp1 Widgets)
My Debian control file is as per below .
Source: demoapp
Section: games
Priority: extra
Maintainer: Manoj Patidar
Build-Depends: debhelper (>= 8.0.0), cmake, qtbase5-dev, cdbs
Standards-Version: 3.9.4
Package: demoapp
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Description
Description will come here
I think I need to add some dependencies for quazip at the line “Depends: ${shlibs:Depends}, ${misc:Depends}” . Is there anything I have missed ? . Please have look into the issue and let me know where I did wrong.
Thanks

Related

How to install pkg-config correctly?

When I tried installing pkg-config, I got this error:
configure: error: Either a previously installed pkg-config or
"glib-2.0 >= 2.16" could not be found. Please set GLIB_CFLAGS and
GLIB_LIBS to the correct values or pass --with-internal-glib to
configure to use the bundled copy.
And then when I included --with-internal-glib next to ./configure, I get this error:
configure: error: *** No iconv() implementation found in C library or
libiconv configure: error: ./configure failed for glib
What do these errors mean?
Use cygcheck -p to find the package to add to your Cygwin installation that your code is looking for:
$ cygcheck -p usr/lib/libiconv
Found 7 matches for usr/lib/libiconv
...
libiconv-devel-1.16-2 - libiconv-devel: Unicode iconv() implementation
libiconv-1.14-2 - libiconv: Unicode iconv() implementation (installed binaries and support files)
You need to install the libiconv-devel package
that will provide the headers and the import libraries. After installation you will have:
$ cygcheck -l libiconv-devel |grep "a$"
/usr/lib/libcharset.a
/usr/lib/libcharset.dll.a
/usr/lib/libiconv.a
/usr/lib/libiconv.dll.a
you can also see if the available glib (libglib2.0-devel) is suitable for your build
$ cygcheck -p usr/lib/libglib
Found 10 matches for usr/lib/libglib
glib2.0-debuginfo-2.50.3-1 - glib2.0-debuginfo: Debug info for glib2.0
...
libglib2.0-devel-2.54.3-1 - libglib2.0-devel: GNOME core C function library (development)
...
libglibmm2.4-devel-2.54.1-2 - libglibmm2.4-devel: C++ bindings for glib-2.4 (development)
Do not forget to install also cygwin-devel

Ubuntu 16.04: fatal error: X11/Xlib.h: No such file or directory

I am trying to install Rgtk2 (dependency for rattle). I am using R thru Anaconda. I am getting the following error.
In file included from Rgtk.c:7:0:
/usr/include/gtk-2.0/gdk/gdkx.h:32:10: fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>
^~~~~~~~~~~~
I tried the following workarounds as found in StackOverflow and other blogs.
Installed libx11-dev, mesa-common-dev, libglu1-mesa-dev, libxrandr-dev, libxi-dev
Tried installing RGtk2_2.20.31 from source.
Every time I am getting the same error.
anaconda has its own environment, which by default usually lacks X11 headers(e.g libx11-dev, or whatever you call it). Try "conda install -c conda-forge xorg-libx11" . It worked for me when a certain R-package threw an error "X11/Xlib.h : No such file or directory".

How can I install hsqml with Windows 10

When I install hsqml, I get the following error:
cabal install hsqml
Resolving dependencies...
Configuring hsqml-0.3.4.1...
Failed to install hsqml-0.3.4.1
Build log ( C:\Users\wjsgm\AppData\Roaming\cabal\logs\hsqml-0.3.4.1.log ):
cabal: Entering directory 'C:\Users\wjsgm\AppData\Local\Temp\cabal-tmp-16012\hsqml-0.3.4.1'
[1 of 1] Compiling Main ( C:\Users\wjsgm\AppData\Local\Temp\cabal-tmp-16012\hsqml-0.3.4.1\dist\setup\setup.hs, C:\Users\wjsgm\AppData\Local\Temp\cabal-tmp-16012\hsqml-0.3.4.1\dist\setup\Main.o )
Linking C:\Users\wjsgm\AppData\Local\Temp\cabal-tmp-16012\hsqml-0.3.4.1\dist\setup\setup.exe ...
Configuring hsqml-0.3.4.1...
setup.exe: Missing dependencies on foreign libraries:
* Missing C libraries: Qt5Core, Qt5Gui, Qt5Widgets, Qt5Qml, Qt5Quick
This problem can usually be solved by installing the system packages that
provide these libraries (you may need the "-dev" versions). If the libraries
are already installed but in a non-standard location then you can use the
flags --extra-include-dirs= and --extra-lib-dirs= to specify where they are.
cabal: Leaving directory 'C:\Users\wjsgm\AppData\Local\Temp\cabal-tmp-16012\hsqml-0.3.4.1'
cabal: Error: some packages failed to install:
hsqml-0.3.4.1 failed during the configure step. The exception was:
ExitFailure 1

Compiling QScintilla on Ubuntu Fails

I'm trying to compile Qscintilla 2.9.2 on Ubuntu 16.04 64bit using Qt 5.7 got the following error message:
-L/home/mwambi/Qt5.7.0/5.7/gcc_64/lib -lQt5PrintSupport -L/usr/lib64 -lQt5Widgets -lQt5Gui -lQt5Core -lpthread -lGL
/usr/bin/ld: cannot find -lGL
collect2: error: ld returned 1 exit status
Makefile:979: recipe for target 'libqscintilla2.so.12.0.1' failed
make: *** [libqscintilla2.so.12.0.1] Error 1
I do not know what the library GL is and where to find it. How can I solve this?
In my experience, this troubleshooting procedure is enough to solve about 90% of missing library issues during compilation:
"-l[name]" implies there's a "lib[name].so"
Search your system for "lib[name]" (use locate or find).
If you find it on your system, check paths ($LB_LIBRARY_PATH and the build system's -L flags) and verify that the architecture matches (x86+64 vs. i686).
Do a repository search for "lib[name]" (use apt, yum, synaptic, &c.).
Install it if it's missing.
Type "lib[name].so" into google or a dedicated package-search site (like RPMFind or packages.ubuntu.com) and see what package names come up, then search for as in #2-3.
In this case, libGL is an implementation of OpenGL. You can install Mesa or find an alternative implementation (I've only ever used Qt with Mesa). Here's a list of packages that provide libGL; if you already have one of these installed on your system, try fetching the dev versions of whichever ones you already have.

Can't install rPython package in R

I'm using CentOS 6.4 and I'm trying to install the R package 'rPython'. It failed with following messages. Anybody knows how to fix this? Thanks!
/usr/bin/ld: /usr/local/lib/python2.7/config/libpython2.7.a(dictobject.o): relocation R_X86_64_32S against `PyDict_Type' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/python2.7/config/libpython2.7.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [rPython.so] Error 1
ERROR: compilation failed for package ‘rPython’
* removing ‘/usr/lib64/R/library/rPython’
It seems that the default installation of Python on RHEL / CentOS,
etc. is not "shared enabled", i.e., it does not include libpython*.so. Just the libpython*.a static library. This prevents some Python
applications to run properly. There are instructions in different
places, (e.g., here or here) indicating how to install Python as a shared library on CentOS and related Linux flavours.

Resources