Skip to content Skip to sidebar Skip to footer

How To Install Extension-functions.c For Sqlite3 On Ubuntu

I use sqlite3 on Ubuntu and would like to add the acos and asin functions that are provided by the extension-functions.c file. https://github.com/seth/RSQLite.extfuns/blob/master/s

Solution 1:

To summarize what I did:

I modified the file to include the <inttypes.h> and changed the printf statements as instructed by Mohit Jain.

Then I executed

gcc -fPIC -shared extension-functions.c -o libsqlitefunctions.so -lm

to compile the c file. Note that the -lm is at the end. Apparently this does matter.

After that you can include the libsqlitefunctions.so by calling

SELECT load_extension('/full/path/to/libsqlitefunctions.so');

before calling any of the new math functions.

Cheers, D.

PS: if you want to use it with Doctrine, you might want to follow this thread.

Solution 2:

Correct way to print an int64_t is:

#include<inttypes.h>
...
printf("%d => %" PRId64 "\n", ee, c);

In your program / library, you can change the way you print to get the desired result.

Complete list of print formats can be found here. You can use a script to fix the printing.

Post a Comment for "How To Install Extension-functions.c For Sqlite3 On Ubuntu"