Thread: BUG #16774: PostgreSQL clean build MINGW64 gcc but initdb fails, cannot find startadress CreateProcessAsUserA
BUG #16774: PostgreSQL clean build MINGW64 gcc but initdb fails, cannot find startadress CreateProcessAsUserA
From
PG Bug reporting form
Date:
The following bug has been logged on the website: Bug reference: 16774 Logged by: Mats Stenfeldt Email address: mats.stenfeldt@gmail.com PostgreSQL version: 13.0 Operating system: Windows 7 64-bit Description: Build environment: MINGW64, GCC (Rev6, Built by MSYS2 project) 10.2.0 REL=REL_13_STABLE Build Steps: 1. git clone git://git.postgresql.org/git/postgresql.git source 2. rel=REL_13_STABLE 3. git checkout $rel 4. source=/y/builds/postgres/source/ 5. dist=/y/builds/postgres/dist/REL_13_STABLE/ 6. $source/configure --host=x86_64-w64-mingw32 --prefix=$dist && make && make install Clean build without errors. But when i try to run the following command: initdb --pgdata=Y:\data\pgsqlgw --username=postgres --auth=trust A messagebox pops up (translated from Swedish), Cannot find procedurestartadress CreateProcessAsUserA in DLL-file KERNEL32.DLL. and the program exits. I have checked INITDB.EXE with Dependency Walker there is a call for: CreateProcessAsUserA in KERNEL32.DLL [hint 235 (0x00EB)]. Maybe the call should be for CreateProcessWithLogonW instead of CreateProcessAsUserA?
Re: BUG #16774: PostgreSQL clean build MINGW64 gcc but initdb fails, cannot find startadress CreateProcessAsUserA
From
Alexander Lakhin
Date:
Hello Mats, 14.12.2020 23:47, PG Bug reporting form wrote: > The following bug has been logged on the website: > > Bug reference: 16774 > ... > > Build environment: MINGW64, GCC (Rev6, Built by MSYS2 project) 10.2.0 > REL=REL_13_STABLE > ... > 6. $source/configure --host=x86_64-w64-mingw32 --prefix=$dist && make && > make install > > Clean build without errors. But when i try to run the following command: > initdb --pgdata=Y:\data\pgsqlgw --username=postgres --auth=trust > A messagebox pops up (translated from Swedish), Cannot find > procedurestartadress CreateProcessAsUserA in DLL-file KERNEL32.DLL. > and the program exits. > I have checked INITDB.EXE with Dependency Walker there is a call for: > CreateProcessAsUserA in KERNEL32.DLL [hint 235 (0x00EB)]. > Maybe the call should be for CreateProcessWithLogonW instead of > CreateProcessAsUserA? The CreateProcessAsUserA function is located in advapi32 now, so you should link with that library. For example: CFLAGS="-D WINVER=0x0600 -D _WIN32_WINNT=0x0600" LIBS="-ladvapi32" ./configure --host=x86_64-w64-mingw32 ... Best regards, Alexander