Attached v15 also does call srandom if it is there, and fixes yet another remaining random call.

I think that I have now removed all references to "random" from pg source. However, the test still fails on windows, because the linker does not find a global variable when compiling extensions, but it seems to find the functions defined in the very same file...

Link:
 4130  C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64\link.exe /ERRORREPORT:QUEUE 
/OUT:".\Release\tablefunc\tablefunc.dll" /INCREMENTAL:NO /NOLOGO Release/postgres/postgres.lib kernel32.lib user32.lib gdi32.lib 
winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /NODEFAULTLIB:libc 
/DEF:"./Release/tablefunc/tablefunc.def" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed 
/DEBUG /PDB:".\Release\tablefunc\tablefunc.pdb" /SUBSYSTEM:CONSOLE /STACK:"4194304" /TLBID:1 /DYNAMICBASE:NO /NXCOMPAT 
/IMPLIB:"Release/tablefunc/tablefunc.lib" /MACHINE:X64 /ignore:4197 /DLL .\Release\tablefunc\win32ver.res
 4131  .\Release\tablefunc\tablefunc.obj
 4132     Creating library Release/tablefunc/tablefunc.lib and object 
Release/tablefunc/tablefunc.exp
 4133 tablefunc.obj : error LNK2001: unresolved external symbol 
pg_global_prng_state [C:\projects\postgresql\tablefunc.vcxproj]
 4134 .\Release\tablefunc\tablefunc.dll : fatal error LNK1120: 1 unresolved 
externals [C:\projects\postgresql\tablefunc.vcxproj]
 4135 Done Building Project "C:\projects\postgresql\tablefunc.vcxproj" (default 
targets) -- FAILED.

The missing symbol is really defined in common/pg_prng.c which AFAICT is linked with postgres.

If someone experienced with the windows compilation chain could give a hint of what is needed, I'd appreciate it!

--
Fabien.


Reply via email to