[Haskell-cafe] Troubles with PostgreSQL, Persistent and Apple M1

Branimir Maksimovic branimir.maksimovic at gmail.com
Tue Sep 21 21:47:56 UTC 2021


seems you are using ghc for different architecture:
bmaxa at Branimirs-Air ~ % brew search ghc
==> Formulae
ghc ✔         ghc at 8.6       ghc at 8.8       ghc at 9         gh            ghq           ghi           ghz           ghr           grc           gcc ✔         shc

If you meant "ghc" specifically:
It was migrated from homebrew/cask to homebrew/core.
bmaxa at Branimirs-Air ~ % ghc -v
Glasgow Haskell Compiler, Version 8.10.7, stage 2 booted by GHC version 8.10.7
*** initializing package database:
Using binary package database: /opt/homebrew/Cellar/ghc/8.10.7/lib/ghc-8.10.7/package.conf.d/package.cache
package flags []
loading package database /opt/homebrew/Cellar/ghc/8.10.7/lib/ghc-8.10.7/package.conf.d
wired-in package ghc-prim mapped to ghc-prim-0.6.1
wired-in package integer-wired-in mapped to integer-gmp-1.0.3.0
wired-in package base mapped to base-4.14.3.0
wired-in package rts mapped to rts
wired-in package template-haskell mapped to template-haskell-2.16.0.0
wired-in package ghc mapped to ghc-8.10.7
!!! initializing package database: finished in 10.92 milliseconds, allocated 8.308 megabytes

Greetings, Branimir.


> On 21.09.2021., at 22:47, Geraldus <heraldhoi at gmail.com> wrote:
> 
> Hi, dear Cafe!
> 
> I'm having trouble compiling an application which uses PostgreSQL on a macbook with an M1 chip.  
> 
> Postgre itself seems to work fine.  It is installed via `homebrew` (if I'm not mistaken this is the only way on Mac to get pg_config, which is required for `persistent-postgresql`).  The error message is following: 
> 
> ```
> persistent-postgresql> <command line>: dlopen(/Users/arthurfayzrakhmanov/.stack/snapshots/x86_64-osx/36432054bd8d13c1da6134758733286b536c65d34222dcf10ecb29bd437c8117/8.10.7/lib/x86_64-osx-ghc-8.10.7/libHSpostgresql-libpq-0.9.4.3-GrxZELytXmSAOH6lAioiw9-ghc8.10.7.dylib, 5): Symbol not found: _PQclear
> persistent-postgresql>   Referenced from: /Users/arthurfayzrakhmanov/.stack/snapshots/x86_64-osx/36432054bd8d13c1da6134758733286b536c65d34222dcf10ecb29bd437c8117/8.10.7/lib/x86_64-osx-ghc-8.10.7/libHSpostgresql-libpq-0.9.4.3-GrxZELytXmSAOH6lAioiw9-ghc8.10.7.dylib
> persistent-postgresql>   Expected in: flat namespace
> persistent-postgresql>  in /Users/arthurfayzrakhmanov/.stack/snapshots/x86_64-osx/36432054bd8d13c1da6134758733286b536c65d34222dcf10ecb29bd437c8117/8.10.7/lib/x86_64-osx-ghc-8.10.7/libHSpostgresql-libpq-0.9.4.3-GrxZELytXmSAOH6lAioiw9-ghc8.10.7.dylib
> ```
> 
> The minimal setup to reproduce is following: 
> 
> ```
> dependencies:
> - base >= 4.7 && < 5
> - persistent >= 2.13.1.2 && < 3
> - persistent-postgresql >= 2.13.1.0 && < 3
> ```
> 
> Digging around gave me just a few clues.  It seems that `libpq` I have is compiled some other way it expected, and missing some symbols required `persistent-postgresql` to work.  I believe this is not a bug, rather that a local configuration issue.  
> 
> Does anyone know which is right setup to build persistent-postgresql on Macs with M1 chip? Thanks in advance.
> 
> Sincerely.  
> Arthur.
> 
> P.S. Please apologize if this is not a right place to ask such questions.  Asked already in Yesod Google Groups and Stack Overflow.  But didn't received any feedback.
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20210921/3e95b1e0/attachment.html>


More information about the Haskell-Cafe mailing list