13. januar 2005 - 13:19Der er
8 kommentarer og 1 løsning
zlib.h problem
Siden jeg ikke har haft så meget respons på LQ, prøver jeg lige her: m trying to use the zlib library and it seems like it is included and found (when I compile the c file using the zlib.h, there's no error). Never the less, when I link my program I get a undefined reference, to the function I use i zlib (compress2).
int compress_buf(char *dst, char *src, unsigned short int level ) { int size = strlen(src); int return_size = 0; dst = malloc(size); return_size = compress2(dst, size, src, size, level); return 0;
}
//gzip_interface.h
#ifndef GZIP_INTERFACE #define GZIP_INTERFACE
int compress_buf(char *dst, char *src, unsigned short int level); #endif
How can this be? I've search for zlib, and it is located in /usr/include and also in /usr/include/linux. I've tried including it like this: #include <zlib.h>, but it's the same problem. There's no problem including the library, but it doesn't seem to find the functions. I'm using Anjuta (on ProMepis 2005.b04), and I've tried adding the library manually, so it links with -lzlib option.. that didn't work either (Second Q: How do you know when it need to be included manually when linking? .. e.g. pthread needs to : -lpthread ??). Any help will be greatly appriciated.
Jeg har lige kompileret zlib og output var en libz.a
Jeg har ikke svaret på hvornår libs skal inkluderes manuelt, men hvis jeg har en undefined reference når jeg linker - så prøver jeg at finde ud af hvilket lib der mangler.
Hacker måden at finde ud af hvilket lib der hører til hvad er at greppe efter den funktion linker brokker sig over, i de(t) directory der indeholder libs.
Undskylder for misfotståelsen. Jeg har copy pasted min post fra linuxquestions.org... derfor på engelsk :) Men det spinder som en mis nu. Takker mange gange. Syntes dog ikke det er logisk, at man blot skal link med -lz i stedet for -lzlib. Og hvornår ved at, at den skal have eksterne linker options? Syntes jeg kan huske jeg har haft lign. problem med glib eller lign. Skal det så linkes med -lg? Takker arne_v
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.