On 6/14/19 9:24 AM, Philippe Mathieu-Daudé wrote: > Hi, > > Apparently QEMU static linking is slowly bitroting. Obviously it > depends the libraries an user has installed, anyway it seems there > are not much testing done. > > This series fixes few issues, enough to build QEMU on a Ubuntu > aarch64 host, but not yet on a x86_64 host: > > LINK x86_64-softmmu/qemu-system-x86_64 > /usr/bin/ld: cannot find -lgtk-3 > /usr/bin/ld: cannot find -latk-bridge-2.0 > /usr/bin/ld: cannot find -latspi > /usr/bin/ld: cannot find -lsystemd > /usr/bin/ld: cannot find -lgdk-3 > /usr/bin/ld: cannot find -lwayland-egl > /usr/bin/ld: cannot find -lmirclient > /usr/bin/ld: cannot find -lmircore > /usr/bin/ld: cannot find -lmircookie > /usr/bin/ld: cannot find -lepoxy > /usr/bin/ld: cannot find -latk-1.0 > /usr/bin/ld: cannot find -lgdk_pixbuf-2.0 > /usr/bin/ld: cannot find -lselinux > /usr/bin/ld: cannot find -lgtk-3 > /usr/bin/ld: cannot find -latk-bridge-2.0 > /usr/bin/ld: cannot find -latspi > /usr/bin/ld: cannot find -lsystemd > /usr/bin/ld: cannot find -lgdk-3 > /usr/bin/ld: cannot find -lwayland-egl > /usr/bin/ld: cannot find -lmirclient > /usr/bin/ld: cannot find -lmircore > /usr/bin/ld: cannot find -lmircookie > /usr/bin/ld: cannot find -lepoxy > /usr/bin/ld: cannot find -latk-1.0 > /usr/bin/ld: cannot find -lgdk_pixbuf-2.0 > /usr/bin/ld: cannot find -lselinux > /usr/bin/ld: attempted static link of dynamic object > `/usr/lib/x86_64-linux-gnu/libz.so' > collect2: error: ld returned 1 exit status
This one is funny, when installing libvte on Ubuntu 18.04: LINK x86_64-softmmu/qemu-system-x86_64 c++: error: /usr/lib/x86_64-linux-gnu/libunistring.so: No such file or directory c++: error: /usr/lib/x86_64-linux-gnu/libunistring.so: No such file or directory c++: error: /usr/lib/x86_64-linux-gnu/libunistring.so: No such file or directory c++: error: /usr/lib/x86_64-linux-gnu/libunistring.so: No such file or directory $ pkg-config --libs --static vte-2.91 -lvte-2.91 -lgtk-3 -latk-bridge-2.0 -latspi -ldbus-1 -lpthread -lsystemd -lgdk-3 -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lxkbcommon -lwayland-cursor -lwayland-egl -lwayland-client -lepoxy -ldl -lpangocairo-1.0 -lpangoft2-1.0 -lharfbuzz -lm -lgraphite2 -lpango-1.0 -lm -latk-1.0 -lcairo-gobject -lcairo -lz -lpixman-1 -lfontconfig -lexpat -lfreetype -lexpat -lfreetype -lpng16 -lm -lz -lm -lxcb-shm -lxcb-render -lXrender -lXext -lX11 -lpthread -lxcb -lXau -lXdmcp -lgdk_pixbuf-2.0 -lm -lpng16 -lm -lz -lm -lgio-2.0 -lz -lresolv -lselinux -lmount -lgmodule-2.0 -pthread -ldl -lgobject-2.0 -lffi -lglib-2.0 -pthread -lpcre -pthread -lgnutls -lgmp /usr/lib/x86_64-linux-gnu/libunistring.so -lidn2 -lhogweed -lgmp -lnettle -ltasn1 -lp11-kit -lz $ ls -ld /usr/lib/x86_64-linux-gnu/libunistring.so ls: cannot access '/usr/lib/x86_64-linux-gnu/libunistring.so': No such file or directory $ ls -ld /usr/lib/x86_64-linux-gnu/libunistring.so* lrwxrwxrwx. 1 root root 21 Mar 3 2018 /usr/lib/x86_64-linux-gnu/libunistring.so.2 -> libunistring.so.2.1.0 -rw-r--r--. 1 root root 1562664 Mar 3 2018 /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0 The fix is probably "sudo ln -s libunistring.so.2 /usr/lib/x86_64-linux-gnu/libunistring.so".