Thread: msvc directory missing in PostgreSQL 17.0
I just downloaded the Postgresql 17.0 and the extracted directory postgresql-17.0/src/tools does not contain
the “msvc” directory as it has since I’ve been building Postgres 12, 14, and 16. How am I supposed to build
PostgreSQL for Windows now? I’m not sure what msvc_gendef.pl does. How do we build Postgres for Windows
using Visual Studio?
Thanks, Mark
On Oct 21, 2024, at 4:12 PM, Mark Hill <Mark.Hill@sas.com> wrote:Thanks Bill! Do you have a sample meson command for building that you could share?
Thanks, MarkFrom: Bill Smith <bill.smith@enterprisedb.com>
Sent: Friday, October 18, 2024 4:11 PM
To: Mark Hill <Mark.Hill@sas.com>
Cc: pgsql-hackers@lists.postgresql.org
Subject: Re: msvc directory missing in PostgreSQL 17.0EXTERNAL
On Oct 18, 2024, at 4:05 PM, Mark Hill <Mark.Hill@sas.com> wrote:I just downloaded the Postgresql 17.0 and the extracted directory postgresql-17.0/src/tools does not containthe “msvc” directory as it has since I’ve been building Postgres 12, 14, and 16. How am I supposed to build
PostgreSQL for Windows now? I’m not sure what msvc_gendef.pl does. How do we build Postgres for Windows
using Visual Studio?You’ll want to use meson to build PG. See the docs here:
<image001.png>
Thanks, Mark
I could hardly find detailed and complete tutorials on building the latest version with Visual Studio. I did use meson to generate sln and vcxproj files in Command Prompt (attatchment: 00meson_cmd_to_gen_sln.txt). But after opening the sln and run menu command "build -> build solution", it failed. The contents of the Output Window in Visual Studio are in the attatchment 01build_log.txt.
Check out this:There's a table showing the setup & build commands using the old way and the new way (meson).On Oct 21, 2024, at 4:12 PM, Mark Hill <Mark.Hill@sas.com> wrote:Thanks Bill! Do you have a sample meson command for building that you could share?
Thanks, MarkFrom: Bill Smith <bill.smith@enterprisedb.com>
Sent: Friday, October 18, 2024 4:11 PM
To: Mark Hill <Mark.Hill@sas.com>
Cc: pgsql-hackers@lists.postgresql.org
Subject: Re: msvc directory missing in PostgreSQL 17.0EXTERNAL
On Oct 18, 2024, at 4:05 PM, Mark Hill <Mark.Hill@sas.com> wrote:I just downloaded the Postgresql 17.0 and the extracted directory postgresql-17.0/src/tools does not containthe “msvc” directory as it has since I’ve been building Postgres 12, 14, and 16. How am I supposed to build
PostgreSQL for Windows now? I’m not sure what msvc_gendef.pl does. How do we build Postgres for Windows
using Visual Studio?You’ll want to use meson to build PG. See the docs here:
<image001.png>
Thanks, Mark
I could hardly find detailed and complete tutorials on building the latest version with Visual Studio.
I did use meson to generate sln and vcxproj files in Command Prompt (attatchment: 00meson_cmd_to_gen_sln.txt). But after opening the sln and run menu command "build -> build solution", it failed. The contents of the Output Window in Visual Studio are in the attatchment 01build_log.txt.
-----原始邮件-----From: "Bill Smith" <bill.smith@enterprisedb.com>Sent: 2024-10-27 15:07:39To: "Mark Hill" <Mark.Hill@sas.com>Subject: Re: msvc directory missing in PostgreSQL 17.0
Check out this:There's a table showing the setup & build commands using the old way and the new way (meson).On Oct 21, 2024, at 4:12 PM, Mark Hill <Mark.Hill@sas.com> wrote:Thanks Bill! Do you have a sample meson command for building that you could share?
Thanks, MarkFrom: Bill Smith <bill.smith@enterprisedb.com>
Sent: Friday, October 18, 2024 4:11 PM
To: Mark Hill <Mark.Hill@sas.com>
Cc: pgsql-hackers@lists.postgresql.org
Subject: Re: msvc directory missing in PostgreSQL 17.0EXTERNAL
On Oct 18, 2024, at 4:05 PM, Mark Hill <Mark.Hill@sas.com> wrote:I just downloaded the Postgresql 17.0 and the extracted directory postgresql-17.0/src/tools does not containthe “msvc” directory as it has since I’ve been building Postgres 12, 14, and 16. How am I supposed to build
PostgreSQL for Windows now? I’m not sure what msvc_gendef.pl does. How do we build Postgres for Windows
using Visual Studio?You’ll want to use meson to build PG. See the docs here:
<image001.png>
Thanks, Mark
On Sun, 27 Oct 2024 at 16:38 GMT+8, Dave Page <dpage@pgadmin.org> wrote: >You can see how it’s done if you take a look at the actions in >https://github.com/dpage/winpgbuild. The postgresql-dev one is probably the >best example, as it only runs a single meson build, whilst the postgresql >action is a matrix build that has to handle both the old style msvc and >meson, and thus is much harder to read. > >The repo also shows how to build (nearly) all the dependencies in a meson >compatible way, or you can just download the build artefacts if you don’t >want to do that yourself (see the bundle-deps action). You may not see the >artefacts if you’re not logged in to Github. That repo seems to be something like Github action. But I would like to generate sln and vcxproj files in my Windows PC,then open Visual Studio, compile and navigate. (Just now I changed my email address)
On Sun, 27 Oct 2024 at 17:38 GMT+8, 黄铎彦 <huangdy2022@qq.com> wrote: >That repo seems to be something like Github action. But I would like to generate sln and vcxproj files in my Windows PC,then open Visual Studio, compile and navigate. I used `meson setup --backend vs` but got compile error with the sln file.
Hi, On October 27, 2024 5:50:51 AM EDT, "huangdy2022@qq.com" <huangdy2022@qq.com> wrote: >On Sun, 27 Oct 2024 at 17:38 GMT+8, 黄铎彦 <huangdy2022@qq.com> wrote: > > >>That repo seems to be something like Github action. But I would like to generate sln and vcxproj files in my Windows PC,then open Visual Studio, compile and navigate. > > >I used `meson setup --backend vs` but got compile error with the sln file. Without knowing the error it's hard for us to help... Andres -- Sent from my Android device with K-9 Mail. Please excuse my brevity.
Hi, In my opinion the issue could be Active-state perl ( as I see in your log file, activestate perl path). In this thread [0] people faced same problem and solved it using strawberry perl. Regards Umar Hayat [0] https://www.postgresql.org/message-id/flat/CADK3HHLQ1MNmfXqEvQi36D_MQrheOZPcXv2H3s6otMbSmfwjzg%40mail.gmail.com On Mon, 28 Oct 2024 at 10:31, 黄铎彦 <huangdy2022@qq.com> wrote: > > On Oct 28, 2024 1:58 GMT+8, Andres Freund <andres@anarazel.de> wrote: > >Without knowing the error it's hard for us to help... > > The build log is attatched. Note current environment on my Windows PC can build pg 16.3 successfully, as I referenced https://www.postgresql.org/docs/16/install-windows-full.html. > I didn't make any change to my dependencies. I use Windows 10 Home and Visual Studio 2019.
On 2024-10-28 09:42 GMT+8 Umar Hayat <postgresql.wizard@gmail.com> wrote: >[0] https://www.postgresql.org/message-id/flat/CADK3HHLQ1MNmfXqEvQi36D_MQrheOZPcXv2H3s6otMbSmfwjzg%40mail.gmail.com It worked! Thank you Umar! My poor searching ability QwQ. But may be a small bug about the order of generation. After I first executed "build -> build solution", I got an error message"libpq.pdb not found". Then I executed for a second time and it returned complete success.