Toon posts:

[C/linux] MD5 link error

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met het compileren van een programma waarin ik de md5 libraries gebruik maar krijg steeds errors:

prompt#gcc bogus-pop.c

/tmp/cch7lj2Q.o: In function `check_pass':
/tmp/cch7lj2Q.o(.text+0x59f): undefined reference to `MD5Init'
/tmp/cch7lj2Q.o(.text+0x5c4): undefined reference to `MD5Update'
/tmp/cch7lj2Q.o(.text+0x5d6): undefined reference to `MD5Final'
collect2: ld returned 1 exit status

Ik heb de md5.h files goed staan en de md5c.o library staat zowel in /lib als in /usr/lib

Wat doe ik fout?

  • ProgrammerX
  • Registratie: Juli 2002
  • Laatst online: 26-02-2021
Wat bedoel je met "ik heb de .h files goed staan" ? Heb je ze in de goede map gezet of heb je ze ook geinclude ?

Volgens mij komt het er in ieder geval op neer dat ie het md5 spul niet kent, dus heb je inderdaad toch iets fout gedaan met je includes of met je lib files.

Verwijderd

Topicstarter
md5c.c staat in /usr/include
md5.h staat in /usr/include
mddriver.c staat in /usr/include

md5c.o staat zowel in /lib als in /usr/lib

  • scorpie
  • Registratie: Augustus 2001
  • Laatst online: 20:25

scorpie

Supra Addict

Verwijderd schreef op 09 April 2003 @ 15:36:
md5c.c staat in /usr/include
md5.h staat in /usr/include
mddriver.c staat in /usr/include

md5c.o staat zowel in /lib als in /usr/lib
ja, en heb je die header files wel geinclude in je code?

#include </usr/include/md5.h>

?

wil een Toyota Supra mkIV!!!!! | wil een Yamaha YZF-R{1,6} | wil stiekem ook een Ducati
"Security is just a state of mind"
PSN: scorpie | Diablo 3: scorpie#2470


Verwijderd

Topicstarter
ik heb
#include <md5.h>
gedaan, omdat ze in het include path staan

  • ProgrammerX
  • Registratie: Juli 2002
  • Laatst online: 26-02-2021
Verwijderd schreef op 09 April 2003 @ 15:41:
ik heb
#include <md5.h>
gedaan, omdat ze in het include path staan
Ik heb totaal geen ervaring met gcc of linux programmeren in het algemeen maar probeer het eens op de manier die hierboven wordt aangegeven dus met het volledige pad erbij.

Verwijderd

Topicstarter
ProgrammerX schreef op 09 April 2003 @ 15:45:
[...]


Ik heb totaal geen ervaring met gcc of linux programmeren in het algemeen maar probeer het eens op de manier die hierboven wordt aangegeven dus met het volledige pad erbij.
Ook geprobeerd, hetzelfde probleem

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:27

Creepy

Tactical Espionage Splatterer

Verwijderd schreef op 09 April 2003 @ 15:41:
ik heb
#include <md5.h>
gedaan, omdat ze in het include path staan
Staan de md5 libs ook in het link path? (check eens de -L en -l optie van gcc).

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • ritsjoena
  • Registratie: December 2001
  • Laatst online: 16-06-2024
Bekijk de header eens. Misschien verwijst hij wel naar andere headers die hij niet kan vinden.Dat had ik met gtk.

Verwijderd

Topicstarter
gcc: argument to `-L' is missing

geeft ie bij mij.
Als ik gcc -S bogus-pop.c doe
(zonder te linken dus) geeft ie geen errors.
het lijkt er dus op dat het fout gaat bij het linken

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:27

Creepy

Tactical Espionage Splatterer

Verwijderd schreef op 09 april 2003 @ 16:01:
gcc: argument to `-L' is missing

geeft ie bij mij.
Als ik gcc -S bogus-pop.c doe
(zonder te linken dus) geeft ie geen errors.
het lijkt er dus op dat het fout gaat bij het linken
dat zeg ik net! man gcc.
-L heeft een argument nodig... raad eens wat voor argument dat is. (en als je het niet kan raden dan is er dus altijd nog de manual pagen van gcc ;) )

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-08 13:19

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verwijderd schreef op 09 april 2003 @ 16:01:
het lijkt er dus op dat het fout gaat bij het linken
das logisch, hij heeft het over .o files waar de fout zit. .o files zijn al gecompileerd, dus het kan ook niet bij het compileren fout gaan.

De fout die je krijgt is dat de linker die symbolen in geen van de objectfiles kan vinden. Je hebt dus nog een object of library nodig waarin die symbolen gedefinieerd zijn (en nu heb je wel weer genoeg hints gehad :P)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1