Seite 1 von 2

/usr/bin/ld: cannot find -lfreetype

Verfasst: 29. Mai 2009 09:11
von AuE
Hi @ll,

bin mal auf Linux(Kubuntu) umgestiegen und wollte mich da mal ein wenig ausprobieren.... Allerdings klappts leider nicht ganz so wie erhofft. Habe den QtCreator 2009-02 samt sourcen installiert. Erster Fehler war das ich das g++ noch nicht installiert hatte.... nun kommen wir zum nächsten Problem:
/usr/bin/ld: cannot find -lfreetype
Was sagt mir diese Meldung? Irgendjemand eine Ahnung was ich machen kann?

Compiler Output:
g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I../../Installs/Qt-2009.02/qt/mkspecs/linux-g++ -I. -I../../Installs/Qt-2009.02/qt/include/QtCore -I../../Installs/Qt-2009.02/qt/include/QtGui -I../../Installs/Qt-2009.02/qt/include -I. -I. -o moc_dialog.o moc_dialog.cpp
g++ -Wl,-rpath,/home/tias/Installs/Qt-2009.02/qt/lib -o first_linux main.o dialog.o moc_dialog.o -L/home/tias/Installs/Qt-2009.02/qt/lib -lQtGui -L/home/tias/Installs/Qt-2009.02/qt/lib -L/usr/X11R6/lib -pthread -lfreetype -lgobject-2.0 -lSM -lICE -pthread -pthread -lXrender -lfontconfig -lXext -lX11 -lQtCore -lm -pthread -lgthread-2.0 -lrt -lglib-2.0 -ldl -lpthread
/usr/bin/ld: cannot find -lfreetype
make: Verlasse Verzeichnis '/home/tias/src/first_linux'
collect2: ld gab 1 als Ende-Status zurück
make: *** [first_linux] Fehler 1
Exited with code 2.
Error while building project first_linux
When executing build step 'Make'

Verfasst: 29. Mai 2009 09:14
von Mani99
Ich vermute (ohne es getestet zu haben) das freetype irgendeine schrift lib ist, also einfach mal

Code: Alles auswählen

sudo apt-cache search freetype
im terminal eingeben und schauen ob er was findet!

//Edit:

Hab gerade die pakete durchgesehen und ich würde diese installieren:

Code: Alles auswählen

sudo apt-get install libfreetype6 libfreetype6-dev

Verfasst: 29. Mai 2009 09:27
von AuE
Jau das hat schon mal sehr schön geklappt. Die freetype6 war aktuell allerdings war an der freetype6-dev was zu machen!

ABER:

Nächstes Problem folgt auf dem Fuß

/usr/bin/ld: cannot find -lgobject-2.0
apt-cache search gobject liefert:
apt-cache search gobject
gob2 - GTK+ Object Builder
gtk-sharp2-gapi - C source parser and C# code generator for GObject based APIs
libavahi-gobject-dev - Development headers for the Avahi GObject library
libavahi-gobject0 - Avahi GObject library
libglib-perl - Perl interface to the GLib and GObject libraries
liboobs-1-4 - GObject based interface to system-tools-backends - shared library
liboobs-1-4-dbg - GObject based interface to system-tools-backends - debug symbols
liboobs-1-dev - GObject based interface to system-tools-backends - dev files
python-gobject - Python bindings for the GObject library
python-gobject-dbg - Python bindings for the GObject library (debug extension)
python-gobject-dev - Development headers for the GObject Python bindings
gmyth-utils - The GMyth utilities package
gobject-introspection - Generate interface introspection data for GObject libraries
gobject-introspection-glib-2.0 - Introspection data for GLib, GObject, Gio and GModule
gobject-introspection-repository - Introspection data for several GNOME related libraries
gssdp-tools - GObject-based library for SSDP (tools)
guile-gnome0-dev - Guile GObject binding support library, development files
guile-gnome0-glib - Guile bindings for GLib
gupnp-tools - UPnP Tools
libbtctl4 - GObject Bluetooth library
libbtctl4-dev - Development files for GObject Bluetooth library
libdevkit-gobject-dev - abstraction for enumerating devices - development files
libdevkit-gobject0 - abstraction for enumerating devices - shared library
libexo-0.3-0 - Library with extensions for Xfce
libgconf-bridge-dev - Bind GObject properties to GConf keys (development files)
libgconf-bridge0 - Bind GObject properties to GConf keys
libgee-dev - GObject based collection library (development files)
libgee0 - GObject based collection library
libgirepository-dev - Library for handling GObject introspection data (development files)
libgirepository0 - Library for handling GObject introspection data (runtime library)
libglrr-gobject-dev - Development library of Grift (gobject)
libglrr-gobject0 - Utility functions for gobject of Grift
libgmyth-dev - GObject based library for accessing MythTV backend (development files)
libgmyth0 - GObject based library for accessing MythTV backend (runtime files)
libgmythupnp-dev - The GObject based library for using a UPnP MythTV backend (development files)
libgmythupnp0 - The GObject based library for using a UPnP MythTV backend (runtime files)
libgopersist-1-1 - Serialisation and deserialisation of GObject
libgopersist-1-1-dbg - Serialisation and deserialisation of GObjects (debug files)
libgopersist-1-dev - Serialisation and deserialisation of GObjects (development files)
libgssdp-1.0-1 - GObject-based library for SSDP
libgssdp-1.0-dbg - GObject-based library for SSDP (debug symbols)
libgssdp-1.0-dev - GObject-based library for SSDP (development files)
libgssdp-doc - GObject-based library for SSDP (documentation)
libgtask-1.0-0 - GObject library for asynchronous programming - shared libraries
libgtask-dev - GObject library for asynchronous programming - development files
libgtask-doc - GObject library for asynchronous programming - documentation
libgupnp-1.0-2 - GObject-based library for UPnP
libgupnp-1.0-dbg - GObject-based library for UPnP (debug symbols)
libgupnp-1.0-dev - GObject-based library for UPnP (development files)
libgupnp-doc - GObject-based library for UPnP (documentation)
libjson-glib-1.0-0 - GLib JSON manipulation library
libjson-glib-1.0-0-dbg - GLib JSON manipulation library (debug symbols)
libjson-glib-dev - GLib JSON manipulation library (development files)
libjson-glib-doc - GLib JSON manipulation library (documentation)
libmimedir-gnome0-dev - MIME Directory Profile implementation [development]
libmimedir-gnome0.4 - MIME Directory Profile implementation [runtime]
libsofia-sip-ua-glib-dev - Sofia-SIP library glib/gobject interface development files
libsofia-sip-ua-glib3 - Sofia-SIP library glib/gobject interfaces runtime
libvala-dev - C# like language for the GObject system - development headers
libvala0 - C# like language for the GObject system - library
libvala0-dbg - C# like language for the GObject system - library symbols
python-giscanner - Python package for handling GObject introspection data
python-gtask - GObject library for asynchronous programming - Python bindings
python-libbtctl - Python bindings for libbtctl Bluetooth library
vala-doc - C# like language for the GObject system - documentation
vala-utils - C# like language for the GObject system - utilities
valac - C# like language for the GObject system
valac-dbg - C# like language for the GObject system
vim-syntax-gtk - Syntax files to highlight GTK+ keywords in vim
root@tias-desktop:/home/tias# libmimedir-gnome0-dev - MIME Directory Profile implementation [development]
bash: libmimedir-gnome0-dev: command not found

Verfasst: 29. Mai 2009 09:31
von Mani99
Ein

Code: Alles auswählen

sudo apt-get update && sudo apt-get install build-essential
sollten eigentlich (alle) deine probleme lösen! :D

Verfasst: 29. Mai 2009 09:40
von franzf
gobject kommt mit glib. Das brauchst man aber (AFAIK) nur für das gstreamer-backend von phonon.

Verfasst: 29. Mai 2009 09:48
von AuE
Leider nein :-(

Hat einiges geupdated aber weiterhin:
Running build steps for project first_linux...
Starting: /home/tias/Installs/Qt-2009.02/qt/bin/qmake /home/tias/src/first_linux/first_linux.pro -spec linux-g++ -r CONFIG+=debug
Exited with code 0.
Starting: /usr/bin/make -w
make: Gehe in Verzeichnis '/home/tias/src/first_linux'
g++ -Wl,-rpath,/home/tias/Installs/Qt-2009.02/qt/lib -o first_linux main.o dialog.o moc_dialog.o -L/home/tias/Installs/Qt-2009.02/qt/lib -lQtGui -L/home/tias/Installs/Qt-2009.02/qt/lib -L/usr/X11R6/lib -pthread -lfreetype -lgobject-2.0 -lSM -lICE -pthread -pthread -lXrender -lfontconfig -lXext -lX11 -lQtCore -lm -pthread -lgthread-2.0 -lrt -lglib-2.0 -ldl -lpthread
/usr/bin/ld: cannot find -lgobject-2.0
make: Verlasse Verzeichnis '/home/tias/src/first_linux'
collect2: ld gab 1 als Ende-Status zurück
make: *** [first_linux] Fehler 1
Exited with code 2.
Error while building project first_linux
When executing build step 'Make'

Verfasst: 29. Mai 2009 09:48
von AuE
Phonon ist nicht mit im Prog integriert... ist nur ein HelloWorld!

Verfasst: 29. Mai 2009 10:03
von Mani99
Keine ahnung was du schon alles installiert hast, aber folgendest sollte wichtig für dich sein:

Code: Alles auswählen

sudo apt-get install libc6 libc6-dev gcc-4.3 gdb libglib2.0-dev

Verfasst: 29. Mai 2009 10:07
von AuE
sieht gut aus-....
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Lese Status-Informationen ein... Fertig
libc6 ist schon die neueste Version.
libc6-dev ist schon die neueste Version.
gcc-4.3 ist schon die neueste VerWähle vormals abgewähltes Paket libglib2.0-dev.
Entpacke libglib2.0-dev (aus .../libglib2.0-dev_2.20.1-0ubuntu2_i386.deb) ...sion.
gdb ist schon die neueste Version.
Die folgenden zusätzlichen Pakete werden installiert:
pkg-config
Vorgeschlagene Pakete:
libglib2.0-doc


EDIT:

Ich krieg nen Hals.... Kann es sein das meine Entscheidung Ubuntu zu nehmen nicht die cleverste war????
Wähle vormals abgewähltes Paket libglib2.0-dev.
Entpacke libglib2.0-dev (aus .../libglib2.0-dev_2.20.1-0ubuntu2_i386.deb) ...
Scheinbar ist das ja gar nicht tauglich fürs coden (jedenfalls nicht in der Voreinstellung)

Denn das nächste was fehlt ist da....
/usr/bin/ld: cannot find -lSM
Gibts denn nicht nen Befehl oder ne Einstellung wie ich diese ganzen Sachen auf einmal installieren kann oder so?

Verfasst: 29. Mai 2009 10:31
von franzf
Da ist aber echt was im Argen mit der Auflöung der Abhängigkeiten...
Denn definitiv linkt QtGui selber gegen libglib, libgobject, libSM usw, also sollte das alles auch drauf sein!

Wg. glib/gobject:
Das wird DRINGEND gebraucht für gstreamer, der Support muss in QtCore und QtGui vorhanden sein. Denn GLib hat eine andere EventLoop als Qt. Die Events aus GStreamer werden nicht in der EventLoop von Qt verarbeitet. Und genau dafür muss QtCore/Gui jetzt GLib verwenden - und auch selber schon gegen GLib linken.

Ich verwende Gentoo und bau alles selber, hatte eigentlich kaum Probleme (außer dass mir jetzt mit openoffice-3.1.0 beim Compilieren der Speicher ausgeht :D ->openoffice-bin)
Aber eigentlich sollte Ubuntu die Abhängigkeiten schon einigermaßen auflösen... Hast du da irgend was selber verdreht? Oder kommt dein Qt aus nem anderen Repository?

Verfasst: 29. Mai 2009 10:36
von AuE
Das ja gerade das komische....

Ich konnte bei der Ubuntu Installation gar nix einstellen so richtig. Kann mich erinnern das man zB bei SuSe ja so Sachen wie Entwicklungskram an/abwählen kann - hier nix dergleichen.

Die Qt Version habe ich von der troll site www.qtsoftware.com und da hab ich die freie variante gesaugt und diese dann via der commands die auf der HP sind installiert.... Installer ist dann durchgelaufen.

QtCreator gestartet und los geht der Mist... das ja mal echt zum ****

Verfasst: 29. Mai 2009 10:38
von Mani99
Du könntest einfach die dev files von qt aus den repos installieren, dann (werden ) sollten alle benötigten abhängigkeiten aufgelöst werden.

Was auch nicht schaden kann ist ein

Code: Alles auswählen

sudo apt-get update && sudo apt-get dist-upgrade
Probier erst einmal das, und danach

Code: Alles auswählen

sudo apt-get update && sudo apt-get install libqt4-dev
Nicht aufgeben, linux ist toll! Da ist nur der anfang etwas verwirrend, aber das gibt sich mit der zeit. Am besten ist es halt immer, software aus den repos zu installieren, da dir apt alle abhängigkeiten auflöst!

Bei (x/k)ubuntu kannst du auch alles einstellen wie bei suse, da musst du halt beim booten nicht "kubuntu auf ihre festplatte installieren" oder so wählen, sondern vorher ich glaub F6 drücken, dann kannst du den expertenmodus auswählen, da hast du dann mehr konfig möglichkeiten.

Sonst wird ein normal lauffähiges (x/k)ubuntu installiert!

Verfasst: 29. Mai 2009 10:47
von AuE
Alles klar.... diese F6 hab ich vergessen ich Idiot ;-)

Das macht mir einiges klar. Installiere grade lib um lib ;-) Was ein Spass ... aber aufgegeben wird nicht.

Kann man das nicht i-wie nachinstallieren?

Verfasst: 29. Mai 2009 10:53
von Mani99
AuE hat geschrieben:Kann man das nicht i-wie nachinstallieren?
Was nachinstallieren?

Code: Alles auswählen

sudo apt-get update && sudo apt-get install libqt4-dev 
Im terminal eingegeben sollte eigentlich alles installieren was du brauchst! Ohne das du das lib für lib machen musst!

Hast du die alternativen quellen freigeschalten? Poste doch mal die ausgabe von

Code: Alles auswählen

cat /etc/apt/sources.list
Und

Code: Alles auswählen

sudo apt-get update && sudo apt-get dist-upgrade
nicht vergessen

solved¡!!!

Verfasst: 29. Mai 2009 10:53
von AuE
Ich geh in Arsch.... es geht!!!! :D :D :D :D

Code: Alles auswählen

sudo apt-get update && sudo apt-get install libqt4-dev
danach gings....
Herrlich!

Ich danke euch allen!