Anzeige:
Ergebnis 1 bis 12 von 12

Thema: gcc: log10 und log10l fehlt

  1. #1
    Registrierter Benutzer
    Registriert seit
    03.09.2006
    Beiträge
    115

    Unhappy gcc: log10 und log10l fehlt

    In einem C-Programm verwende ich problemlos Funktionen wie powl und sqrtl, aber zu log10 und log10l meldet der gcc: undefined reference to `logl0'

    Aber diese Funktionen sind C99-Funktionen; die müssen in irgendeinem Paket sein, aber in welchem?

    Laut C99 müssten die Funktionen in math.h stehen, aber unter Ubuntu ist das nicht der Fall.

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    "undefined reference" ist eine Linkerfehlermeldung, d.h. die Kompilierung hat soweit geklappt (die Funktion wurde in einem der inkludierten Header gefunden).

    Vermutlich linkst du derzeit noch nicht gegen die libm, die Bibliiothek, die diese Funktionen bereitstellt.

    Füge
    Code:
    -lm
    zu deinen Linkerflags bzw zu deinem Linkkommando hinzu.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer
    Registriert seit
    03.09.2006
    Beiträge
    115
    Zitat Zitat von anda_skoa Beitrag anzeigen
    "undefined reference" ist eine Linkerfehlermeldung, d.h. die Kompilierung hat soweit geklappt (die Funktion wurde in einem der inkludierten Header gefunden).

    Vermutlich linkst du derzeit noch nicht gegen die libm, die Bibliiothek, die diese Funktionen bereitstellt.

    Füge
    Code:
    -lm
    zu deinen Linkerflags bzw zu deinem Linkkommando hinzu.

    Ciao,
    _
    Ohne -lm würden ja schon Funtionen wie sqrtl fehlen, das kann nicht die Ursache sein.
    Ich Kompilierte mit dieser Kommandozeile:

    gcc -O5 -ffast-math -lm -o bol1 bol1.c

    Bis auf log10 funktioniert es auch hiermit:

    gcc -O5 -ffast-math -o bol1 bol1.c

    Es funktioniert aber, mit -lm, weder ohne -O5 noch ohne -ffast-math, denn dann bekomme ich ich zu sqrtl und powl wieder den Fehler undefinded reference.

  4. #4
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.604
    Zitat Zitat von Linus Beitrag anzeigen
    In einem C-Programm verwende ich problemlos Funktionen wie powl und sqrtl, aber zu log10 und log10l meldet der gcc: undefined reference to `logl0'
    In der Fehlermeldung steht nicht "log10", sondern "logl0". Also hast du dich vielleicht im Quelltext vertippt?

  5. #5
    Registrierter Benutzer
    Registriert seit
    03.09.2006
    Beiträge
    115
    Zitat Zitat von sommerfee Beitrag anzeigen
    In der Fehlermeldung steht nicht "log10", sondern "logl0". Also hast du dich vielleicht im Quelltext vertippt?
    Tatsächlich ist da an Stelle der Eins ein kleines L, aber in dem Font Courier sehen die exakt gleich aus, so das der Vertipper unsichtbar war!
    Das ist ja eine üble Sabotage; sowas krankes gehört verboten
    Ich habe jetzt mal umgeschaltet auf Nimbus Roman No9 l, mit dem es das Problem nicht gibt.

  6. #6
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.604
    Zitat Zitat von Linus Beitrag anzeigen
    Das ist ja eine üble Sabotage; sowas krankes gehört verboten
    Dann ist das vielleicht was für dich:

    http://www.heise.de/developer/meldun...e-1718746.html
    http://www.golem.de/news/open-source...209-94795.html

  7. #7
    Registrierter Benutzer
    Registriert seit
    03.09.2006
    Beiträge
    115
    Ja, das sieht gut aus.
    Gibt es eigentlich Erkenntnisse wie Fonts entstanden, bei denen verschiedene Zeichen exakt gleich dargestellt werden?
    Das sieht doch nach dem Werk eines Schläfers aus, im Auftrag von al-Qaida.

  8. #8
    Registrierter Benutzer
    Registriert seit
    03.09.2006
    Beiträge
    115
    Nachtrag: Ich bin zunächst auf den Font "Source Code Pro" umgestiegen, musste aber feststellen das a) die Leerzeichen ungefähr halbe Breite haben und b) variable Größe!

    Also auch dieser Font ist nicht monospaced und für Sourcecode sowie ASCII-Zeichnungen ungeeignet!
    Zwangsweise bin ich deshalb zu "Ubuntu Mono" gewechselt.

  9. #9
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.604
    Zitat Zitat von Linus Beitrag anzeigen
    Nachtrag: Ich bin zunächst auf den Font "Source Code Pro" umgestiegen, musste aber feststellen das a) die Leerzeichen ungefähr halbe Breite haben und b) variable Größe!
    Merkwürdig, bei mir das das definitiv nicht so, "Source Code Pro" ist bei mir monospaced.

  10. #10
    Registrierter Benutzer
    Registriert seit
    03.09.2006
    Beiträge
    115
    Zitat Zitat von sommerfee Beitrag anzeigen
    Merkwürdig, bei mir das das definitiv nicht so, "Source Code Pro" ist bei mir monospaced.
    Also ich habe alle verschiedenen Teil-Fonts ausprobiert, z. B. Source Sans Pro Semibold, aber alle haben den gleichen Bug, zumindest wenn ich kwrite als Editor benutze.

  11. #11
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.604
    Zitat Zitat von Linus Beitrag anzeigen
    Also ich habe alle verschiedenen Teil-Fonts ausprobiert, z. B. Source Sans Pro Semibold, aber alle haben den gleichen Bug, zumindest wenn ich kwrite als Editor benutze.
    Nur "Source Code Pro" ist monospaced (z.B. "Source Code Pro Regular 11"), "Source Sans Pro" nicht.

  12. #12
    Registrierter Benutzer
    Registriert seit
    03.09.2006
    Beiträge
    115
    Zitat Zitat von sommerfee Beitrag anzeigen
    Nur "Source Code Pro" ist monospaced (z.B. "Source Code Pro Regular 11"), "Source Sans Pro" nicht.
    Achso, da hat Heise zu Source Code Pro verwirrenderweise über "Siehe dazu auch:" auf Source Sans Pro verwiesen, obwohl das was ganz anderes ist

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •