You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue seems to come from declaring wg_compare_and_swap as inline. When removing it from prototype and declaration, compilation works fine.
My knowledge on GCC options and C standards is a bit rusty but apparently, depending on the standard (tried compiling with "-std=c99" too), declaring a function inline prevents it from being accessed from another file (in this case, dbdata.c).
My suggestion would be to remove the inline keyword but this could effect performance. I've tried multiple combinations of keywords ("extern", as some articles recommended) but nothing could make compilation work. I'm all ears to work on tests if you have a better idea to keep the "inline" and making it work.
Thanks for your help,
The text was updated successfully, but these errors were encountered:
this should be fixed by commit ad30631, but getting the next package (0.7.3) out will take some time still.
Edited to add: from the compile log I'm assuming you're using 0.7.2, you could continue using that source, but patch it with the diff from the commit I've referenced or drop in dblock.c and dblock.h from the github repo. Regarding the inline keyword and performance, AFAIK it no longer guarantees that the function is inlined with gcc anyway.
Hi,
Tried compiling whitedb on Mac OS X but I kept crashing on the linking phase of
make
.Here are the full outputs from both
./configure
andmake
: https://gist.github.com/joshleaves/4a7baa64372273b704ebIssue seems to come from declaring wg_compare_and_swap as inline. When removing it from prototype and declaration, compilation works fine.
My knowledge on GCC options and C standards is a bit rusty but apparently, depending on the standard (tried compiling with "-std=c99" too), declaring a function inline prevents it from being accessed from another file (in this case, dbdata.c).
My suggestion would be to remove the inline keyword but this could effect performance. I've tried multiple combinations of keywords ("extern", as some articles recommended) but nothing could make compilation work. I'm all ears to work on tests if you have a better idea to keep the "inline" and making it work.
Thanks for your help,
The text was updated successfully, but these errors were encountered: