Missing library starting up QT5 - linux

I have a Qt application that I am trying to run, but fails to start because it "could not find or load the Qt platform plugin "xcb". When I run ldd on libqxcb.so all the libraries are linked except for one: libxcb-icccm.so.1 => not found
Now, I do have libxcb-icccm.so.4 on my machine, but if I create a symlink pointing to it, everything crashes and burns. From everything I've found the icccm library comes from the XOrg libs, but when I download the source to build it, I have thus far ended up with libxcb-icccm.so.4 instead of libxcb-icccm.so.1
Am I doing something wrong, or am I just missing the version of the xcb libraries I need to build libxcb-icccm.so.1

This version of the icccm library can be found in: xcb-util-0.3.6

Related

Get AVR with gcc running on fedora

im trying to solve this issue for a few days now and i cant find any solution.
I got myself an Atmega88A and i want to program it on fedora.
I tried to program C with gcc and that went well. But as i tried to include the avr/io.h, i always get the failure that it didnt found anything. I tried to get the new version of gcc, but that gives me an error too. Would it be enough to just download the avr/io.h library and implement it somewhere in my files? or is there any way to download this all together, including also all the other libraries that i need (e.g. util/delay.h)
You need to use a version of GCC that is specifically built to target AVR chips, you cannot just use the normal gcc executable for your system because it will produce the wrong kind of program. If you download a correctly-configured toolchain, then lines like #include <avr/io.h> should work automatically because the toolchain's default include search paths will be set up properly.
Many Linux distributions provide an avr-gcc package that you can just install with your package manager, including Fedora. You might have to install the avr-libc package to get the avr/io.h header.
If that doesn't work for some reason, you could try downloading Microchip's official AVR toolchain from this page:
http://www.microchip.com/avr-support/avr-and-arm-toolchains-(c-compilers)
What fixed this problem for me was this missing package: avr-gcc-c++. Running the command:
dnf install avr-gcc-c++
fixed it.

Linux - Running Executable Error (GLIBCXX_3.4.21 not found)

I'm trying to deploy my application as a stand-alone that can work on any Linux machine. I've built my application under Qt Creator and have successfully statically linked my application. However, when I test the application on another Linux machine, I get the following error:
libstdc++.so.6: version 'GLIBCXX_3.4.21' not found (required by ./Executable)
I'm not sure how to resolve this error.
This is a error i had myself, but in another context.
What this means is: libstdc++.so.6 (a shared object file, the standard library of c++ programms, that many programms can use together(share)) is another version then the program you compiled requires.
i had this issue when switching from gcc-4.8 to gcc-5.
Have you using different linux distros when compiling and executing? (Ubuntu?)
You must make sure the versions match, or statically compile the used libstdc++ into your binary as well.
Here is a SO question relating to these kind of issues.
GLIBCXX versions

Can I run a program with a newer version of shared openmpi library than it was compiled against?

I have a problem connected to a version of the openmpi library. Recently I had installed the newest stable version of the openmpi (1.10.2) and one of the programs I use stopped working. There is an error message when I run it:
error while loading shared libraries: libmpi.so.1: cannot open shared object file: No such file or directory
Indeed, there is no such a file in my system. There is however a newer version of the library - libmpi.so.12 and libmpi.so.12.0.2. Other programs, which are using openmpi, work without any error, which proves that the library was installed correctly (at least I think so (: ).
Unfortunately, I don't know which version of the openmpi was used to compile the program. I don't have access to its source code, so I cannot compile it against the newer library. I noticed that I can make the program run if I copy the libmpi.so.12 to the file called libmpi.so.1
Therefore, I have two questions:
Is it reasonable to use the workaround I've found? I have some doubts, although the program appears to run well.
Is there a way to check which version of the openmpi library was used during a compilation?
Thanks in advance.
EDIT:
I use Linux Mint 17.3.

Cannot use Cairo in Monodevelop on Debian linux

I want to create my own GTK# widget, and so I need to use Cairo for custom painting. But there is a big problem - Cairo library is not recognized on my machine.
At statement using Cairo; Monodevelop says: The name 'Cairo' does not exist in the current context, and so I cannot even compile my sources. I have tried to disable source analysis, but obviously this is deeper problem.
I use Debian testing and all libmono-cairo* libraries are installed.
Is there any way how to got Cairo working on Debian linux?
Thanks
If libmono-cairo* are installed, you surely missed adding Mono.Cairo to your references:
Check Mono.Cairo to add cairo wrapper assembly to your project.
If you can't find Mono.Cairo in the Packages, go to .net Assembly Tab, and browse
/usr/lib/mono/4.0/
Or any other cli version, and add Mono.Cairo.dll to your references.
note:
I've double check why on Debian (jessie for me) Mono.Cairo doesn't appear in the reference list even if Mono-cairo.pc is present in pkgconfig directory. Launching Monodevelop as Root, it appears in the Packages list. So must there be a permission failure somewhere.

Ubuntu/Darling - dyld: Failed to load native library: libSimpleWebKit.so

I'm attempting to use Darling directly built from source on Github, I ran in to a few issues with building and dependencies, but with the help of apt-file I got through all the little problems. Now, I'm trying to run Sourcetree From Atlassian (as Wine can't seem to handle the windows version) and am getting the following error. Would anyone happen to have an idea on why? Currently running Ubuntu 13.04 64bit.
dyld: Cannot execute binary file: Failed to load native library: libSimpleWebKit.so: cannot open shared object file: No such file or directory
I just had this error myself. The error message tells you already everything you need to know: The appropriate library - libsimplewebkit - was not found and needs to be installed. Just search for simplewebkit with your distros package manager and install the appropriate package. If it doesn't find anything you will need to compile it yourself.

Resources