Re: Help with adding C-Language Functions
От | Seamus Thomas Carroll |
---|---|
Тема | Re: Help with adding C-Language Functions |
Дата | |
Msg-id | Pine.LNX.4.60.0502101251550.5503@frost обсуждение исходный текст |
Ответ на | Re: Help with adding C-Language Functions (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Help with adding C-Language Functions
|
Список | pgsql-interfaces |
Thinking back I think i tried g++ first which caused the error to occur. When i then tried cc the .so was already loaded. I have c++ classes i want to use but when i complile using g++ i get the error (cant find function x in file.so). Does anyone have experience compiling c++ and loading the function? Seamus On Thu, 10 Feb 2005, Tom Lane wrote: > Seamus Thomas Carroll <carrolls@cpsc.ucalgary.ca> writes: >> I changed my file from BlackboardFunctions.c to all lowercase, >> blackboardfunctions.c, and the database now finds the add_one function. > > I'm betting that the actual sequence of events was more like this: > > CREATE FUNCTION f1(...) as '/home/.../BlackboardFunctions' ...; > [ test f1, it works, cool ] > [ add add_one to C source file, recompile ] > CREATE FUNCTION add_one(...) as '/home/.../BlackboardFunctions' ...; > [ fails ] > [ rename file ] > CREATE FUNCTION add_one(...) as '/home/.../blackboardfunctions' ...; > [ works ] > > The reason the second try didn't work is that an existing backend will > not re-load an already loaded .so file, unless you force it to with the > LOAD command. It doesn't notice that you've modified the file. Had you > started a fresh session, things would have worked, too. > > regards, tom lane >
В списке pgsql-interfaces по дате отправления: