Closed ccleve closed 1 month ago
This came up in #1828. Same problem.
I asked the OP over there to submit a PR to improve our docs but they have not.
I’m loathe to do it because I don’t use a Mac anymore as my daily development machine and while I was able to follow along on my spare mini to help them out, I’m not confident in writing the exact steps/instructions.
Could I ask you to do that for us, Mr. Cleveland?
I've done the PR. Unfortunately, I don't have a clean Mac to do the install from scratch, so I'm not sure I've got everything. I suppose I could spin up a Mac in the cloud somewhere...
In any case, documentation isn't a good solution to this problem. We should investigate why ./config is running differently. Is pgrx's invocation of the pg build process any different for pg17? Or did they do something to mess things up?
I don’t know why it behaves like this for 17.
We had some serious drama with 16 and its inclusion of some SIMD headers. That took awhile to overcome. Perhaps this is a similar thing.
In all my years of doing Unix software dev I have tried very very hard to not learn a damn thing about make and autoconf and related toolchains. So it’s physically painful for me to dig into this stuff now that I’m old and gray.
Saying “install icu via brew and exposer the pkgcfg path like it tells you you might need” seems reasonable.
We might could teach our build.rs how to snoop around a bit before we call bindgen. That’s the closest to a concept of a plan I’ve got.
I can't tell if this is a pgrx issue or a pg17 issue.
Apple just did a drive-by shooting of my XCode install, upgrading it without asking, and of course moving the C compiler. This normally requires a new
cargo pgrx init
.I took the opportunity to upgrade Rust and pgrx. Now, after a clean install,
cargo pgrx init
chokes on pg17:pg16 and previous versions install fine. It's just 17 that has the problem.
Looking into the config logs, I see this in the pg16 log:
pg16 is correctly finding icu in the homebrew dir.
pg17 has this:
| #define CONFIGURE_ARGS " '--prefix=/Users/ccleve/.pgrx/17rc1/pgrx-install' '--with-pgport=28817' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DUSE_ASSERT_CHECKING=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '"
No mention of homebrew.
A little further down in the pg17 log:
So, I run this on the command line:
export PKG_CONFIG_PATH=/opt/homebrew/opt/icu4c/lib/pkgconfig
and
cargo pgrx init
runs fine.Again, I don't know if the problem lies in the pg17 config, or in the way that pgrx is invoking it.