Thread: using palloc in extension functions in c
Hello I am trying to write an extension function to postgres in c. In the documentation it is said that i should use palloc instead of malloc when i do this. I try to use it like they have done in the documentation but when i try to compile it i get an error. Here is some of the code and the error: #include <postgresql/server/postgres.h> #include <postgresql/server/fmgr.h> char *scoreChar; void readScoreMatrix(char *filename) { scoreChar = palloc(20*VARHDRSZ); } error message: bash-2.05b$ gcc smith-waterman.c /tmp/cc0X3Urq.o(.text+0x4dd): In function `readScoreMatrix': : undefined reference to `CurrentMemoryContext' /tmp/cc0X3Urq.o(.text+0x4e5): In function `readScoreMatrix': : undefined reference to `MemoryContextAlloc' collect2: ld returned 1 exit status Best regards Kjetil Haaland
On Wed, Oct 27, 2004 at 01:59:56PM +0200, Kjetil Haaland wrote: > > bash-2.05b$ gcc smith-waterman.c > /tmp/cc0X3Urq.o(.text+0x4dd): In function `readScoreMatrix': > : undefined reference to `CurrentMemoryContext' > /tmp/cc0X3Urq.o(.text+0x4e5): In function `readScoreMatrix': > : undefined reference to `MemoryContextAlloc' > collect2: ld returned 1 exit status See the "Compiling and Linking Dynamically-Loaded Functions" documentation: http://www.postgresql.org/docs/7.4/static/xfunc-c.html#DFUNC -- Michael Fuhr http://www.fuhr.org/~mfuhr/