Re: Mac OS X error for pgAdmin 4.1.2

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Sandeep Thakkar <sandeep(dot)thakkar(at)enterprisedb(dot)com>
Cc: matshyeq <matshyeq(at)gmail(dot)com>, Ashesh Vashi <ashesh(dot)vashi(at)enterprisedb(dot)com>, pgAdmin Support <pgadmin-support(at)postgresql(dot)org>
Subject: Re: Mac OS X error for pgAdmin 4.1.2
Date: 2017-02-22 15:05:54
Message-ID: CA+OCxoyyAfmo5h4ksayeQdLrv-wO=5etmsRQZhmXmsSk0s=+6A@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-support

OK, so suggestions (i.e. a patch) for fixing the build? I guess we need to
ensure the build script forces a compilation of psycopg2 when creating the
venv, and passes down -mmacosx-version-min=10.9 ?

On Wed, Feb 22, 2017 at 1:23 PM, Sandeep Thakkar <
sandeep(dot)thakkar(at)enterprisedb(dot)com> wrote:

>
>
> On Wed, Feb 22, 2017 at 5:19 PM, Dave Page <dpage(at)pgadmin(dot)org> wrote:
>
>> So why does it work on my MacOS 10.9 test system?
>>
>> Right, the link below says that the library validation starts from 10.10 (
> https://developer.apple.com/library/content/documentation/
> Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html)
>
> On Wed, Feb 22, 2017 at 11:15 AM, Sandeep Thakkar <
>> sandeep(dot)thakkar(at)enterprisedb(dot)com> wrote:
>>
>>> So, if you see the libssl library is signed with SHA256 algorithm which
>>> probably is not understood by MacOS 10.10. I found a related article @
>>> http://www.discretecosine.com/index-html-2/
>>>
>>> That means the build was done on higher version of MacOS and to fix
>>> this, the code should be rebuild with "-mmacosx-version-min=10.9"
>>> compiler/linker flags.
>>>
>>>
>>> On Wed, Feb 22, 2017 at 3:40 PM, matshyeq <matshyeq(at)gmail(dot)com> wrote:
>>>
>>>> Hi Sandeep,
>>>>
>>>> Please see below:
>>>>
>>>> ○ → codesign -vvvd /Applications/pgAdmin\
>>>> 4.app/Contents/Frameworks/libssl.1.0.0.dylib
>>>>
>>>> Executable=/Applications/pgAdmin 4.app/Contents/Frameworks/libs
>>>> sl.1.0.0.dylib
>>>>
>>>> Identifier=libssl.1
>>>>
>>>> Format=Mach-O thin (x86_64)
>>>>
>>>> CodeDirectory v=20200 size=3336 flags=0x0(none) hashes=100+2
>>>> location=embedded
>>>>
>>>> Hash type=sha256 size=32
>>>>
>>>> CDHash=658db12e24c9bc952fcbaed53d2d66c785e890fa
>>>>
>>>> Signature size=8886
>>>>
>>>> Authority=Developer ID Application: EnterpriseDB Corporation
>>>> (26QKX55P9K)
>>>>
>>>> Authority=Developer ID Certification Authority
>>>>
>>>> Authority=Apple Root CA
>>>>
>>>> Timestamp=10 Feb 2017 10:42:09
>>>>
>>>> Info.plist=not bound
>>>>
>>>> TeamIdentifier=26QKX55P9K
>>>>
>>>> Sealed Resources=none
>>>>
>>>> Internal requirements count=1 size=168
>>>>
>>>> ○ → codesign -vvvd /Applications/pgAdmin\
>>>> 4.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore
>>>>
>>>> Executable=/Applications/pgAdmin 4.app/Contents/Frameworks/QtCo
>>>> re.framework/Versions/5/QtCore
>>>>
>>>> Identifier=org.qt-project.Qt.QtCore
>>>>
>>>> Format=bundle with Mach-O thin (x86_64)
>>>>
>>>> CodeDirectory v=20200 size=29648 flags=0x0(none) hashes=1475+3
>>>> location=embedded
>>>>
>>>> Hash type=sha1 size=20
>>>>
>>>> CDHash=2848273fdc5c8d0eb57084f40a53e0d989ce3a99
>>>>
>>>> Signature size=8935
>>>>
>>>> Authority=Developer ID Application: EnterpriseDB Corporation
>>>> (26QKX55P9K)
>>>>
>>>> Authority=Developer ID Certification Authority
>>>>
>>>> Authority=Apple Root CA
>>>>
>>>> Timestamp=10 Feb 2017 10:42:10
>>>>
>>>> Info.plist entries=8
>>>>
>>>> TeamIdentifier=26QKX55P9K
>>>>
>>>> Sealed Resources version=2 rules=13 files=1
>>>>
>>>> Internal requirements count=1 size=184
>>>>
>>>>
>>>> ○ → codesign -vvvd /Applications/pgAdmin\
>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>> pg2/_psycopg.so
>>>>
>>>> /Applications/pgAdmin 4.app/Contents/Resources/venv/
>>>> lib/python/site-packages/psycopg2/_psycopg.so: code object is not
>>>> signed at all
>>>>
>>>> ○ → ls -l /Applications/pgAdmin\ 4.app/Contents/Resources/venv/
>>>> lib/python/site-packages/psycopg2/_psycopg.so
>>>>
>>>> -rwxr-xr-x@ 1 maciek admin 376120 10 Feb 10:42 /Applications/pgAdmin
>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>> pg2/_psycopg.so
>>>>
>>>> Thank you,
>>>> Kind Regards
>>>> ~Maciek
>>>>
>>>> On 22 February 2017 at 05:47, Sandeep Thakkar <
>>>> sandeep(dot)thakkar(at)enterprisedb(dot)com> wrote:
>>>>
>>>>> I see you are running the pgAdmin app on 10.10.5. Is it built on the
>>>>> same MacOS version? I suspect this is related to SHA algorithm. What's the
>>>>> output for the following:
>>>>>
>>>>> $ codesign -vvvd /Applications/pgAdmin\ 4.app/Contents/Frameworks/libs
>>>>> sl.1.0.0.dylib
>>>>> $ codesign -vvvd /Applications/pgAdmin\ 4.app/Contents/Frameworks/QtCo
>>>>> re.framework/Versions/5/QtCore
>>>>> $ codesign -vvvd /Applications/pgAdmin\ 4.app/Contents/Resources/venv/
>>>>> lib/python/site-packages/psycopg2/_psycopg.so
>>>>>
>>>>> On Wed, Feb 22, 2017 at 12:07 AM, matshyeq <matshyeq(at)gmail(dot)com> wrote:
>>>>>
>>>>>> Hi Ashesh,
>>>>>>
>>>>>> Here it is:
>>>>>>
>>>>>> ○ → otool -L "/Applications/pgAdmin 4.app/Contents/Resources/venv/
>>>>>> lib/python/site-packages/psycopg2/_psycopg.so"
>>>>>>
>>>>>> /Applications/pgAdmin 4.app/Contents/Resources/venv/
>>>>>> lib/python/site-packages/psycopg2/_psycopg.so:
>>>>>>
>>>>>> @loader_path/../../../../../../../Contents/Frameworks/libpq.5.dylib
>>>>>> (compatibility version 5.0.0, current version 5.9.0)
>>>>>>
>>>>>> @loader_path/../../../../../../../Contents/Frameworks/libssl.1.0.0.dylib
>>>>>> (compatibility version 1.0.0, current version 1.0.0)
>>>>>>
>>>>>> @loader_path/../../../../../../../Contents/Frameworks/libcrypto.1.0.0.dylib
>>>>>> (compatibility version 1.0.0, current version 1.0.0)
>>>>>>
>>>>>> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
>>>>>> version 1238.0.0)
>>>>>>
>>>>>>
>>>>>> ○ → otool -L "/Applications/pgAdmin 4.app/Contents/Frameworks/libp
>>>>>> q.5.dylib"
>>>>>>
>>>>>> /Applications/pgAdmin 4.app/Contents/Frameworks/libpq.5.dylib:
>>>>>>
>>>>>> /usr/local/pgsql-9.6/lib/libpq.5.dylib (compatibility version 5.0.0,
>>>>>> current version 5.9.0)
>>>>>>
>>>>>> @loader_path/../../Contents/Frameworks/libssl.1.0.0.dylib
>>>>>> (compatibility version 1.0.0, current version 1.0.0)
>>>>>>
>>>>>> @loader_path/../../Contents/Frameworks/libcrypto.1.0.0.dylib
>>>>>> (compatibility version 1.0.0, current version 1.0.0)
>>>>>>
>>>>>> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
>>>>>> version 1238.0.0)
>>>>>>
>>>>>>
>>>>>> ○ → otool -L "/Applications/pgAdmin 4.app/Contents/Frameworks/libs
>>>>>> sl.1.0.0.dylib"
>>>>>>
>>>>>> /Applications/pgAdmin 4.app/Contents/Frameworks/libssl.1.0.0.dylib:
>>>>>>
>>>>>> libssl.1.0.0.dylib (compatibility version 1.0.0, current version
>>>>>> 1.0.0)
>>>>>>
>>>>>> @loader_path/../../Contents/Frameworks/libcrypto.1.0.0.dylib
>>>>>> (compatibility version 1.0.0, current version 1.0.0)
>>>>>>
>>>>>> @loader_path/../../Contents/Frameworks/libz.1.dylib (compatibility
>>>>>> version 1.0.0, current version 1.2.8)
>>>>>>
>>>>>> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
>>>>>> version 1238.0.0)
>>>>>>
>>>>>> Thank you,
>>>>>> Kind Regards
>>>>>> ~Maciek
>>>>>>
>>>>>> On 21 February 2017 at 14:22, Ashesh Vashi <
>>>>>> ashesh(dot)vashi(at)enterprisedb(dot)com> wrote:
>>>>>>
>>>>>>> Can you please run the following command for me?
>>>>>>> otool -L "/Users/asheshvashi/Applications/pgAdmin
>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>> pg2/_psycopg.so"
>>>>>>> otool -L "/Users/asheshvashi/Applications/pgAdmin
>>>>>>> 4.app/Contents/Frameworks/libpq.5.dylib"
>>>>>>> otool -L "/Users/asheshvashi/Applications/pgAdmin
>>>>>>> 4.app/Contents/Frameworks/libssl.1.0.0.dylib"
>>>>>>>
>>>>>>> --
>>>>>>>
>>>>>>> Thanks & Regards,
>>>>>>>
>>>>>>> Ashesh Vashi
>>>>>>> EnterpriseDB INDIA: Enterprise PostgreSQL Company
>>>>>>> <http://www.enterprisedb.com>
>>>>>>>
>>>>>>>
>>>>>>> *http://www.linkedin.com/in/asheshvashi*
>>>>>>> <http://www.linkedin.com/in/asheshvashi>
>>>>>>>
>>>>>>> On Tue, Feb 21, 2017 at 6:26 PM, matshyeq <matshyeq(at)gmail(dot)com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> ○ → codesign --verbose --verify /Applications/pgAdmin\
>>>>>>>> 4.app/Contents/Frameworks/libssl.1.0.0.dylib
>>>>>>>> /Applications/pgAdmin 4.app/Contents/Frameworks/libssl.1.0.0.dylib:
>>>>>>>> valid on disk
>>>>>>>> /Applications/pgAdmin 4.app/Contents/Frameworks/libssl.1.0.0.dylib:
>>>>>>>> satisfies its Designated Requirement
>>>>>>>>
>>>>>>>> Thank you,
>>>>>>>> Kind Regards
>>>>>>>> ~Maciek
>>>>>>>>
>>>>>>>> On 21 February 2017 at 12:36, Ashesh Vashi <
>>>>>>>> ashesh(dot)vashi(at)enterprisedb(dot)com> wrote:
>>>>>>>>
>>>>>>>>> On Tue, Feb 21, 2017 at 3:15 PM, Dave Page <dpage(at)pgadmin(dot)org>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Argh, darn mailer. Here's the output:
>>>>>>>>>>
>>>>>>>>>> maciek in /Applications/pgAdmin 4.app/Contents/MacOS
>>>>>>>>>> ○ → ./pgAdmin4
>>>>>>>>>> Python path: "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages:/Syst
>>>>>>>>>> em/Library/Frameworks/Python.framework/Versions/2.7/lib/pyth
>>>>>>>>>> on2.7/lib-dynload:/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python"
>>>>>>>>>> Python Home: "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv"
>>>>>>>>>> Webapp path: "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/web/pgAdmin4.py"
>>>>>>>>>> Traceback (most recent call last):
>>>>>>>>>> File "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/web/pgAdmin4.py", line 46, in <module>
>>>>>>>>>> app = create_app()
>>>>>>>>>> File "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/web/pgadmin/__init__.py", line 266, in
>>>>>>>>>> create_app
>>>>>>>>>> driver.init_app(app)
>>>>>>>>>> File "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/web/pgadmin/utils/driver/__init__.py",
>>>>>>>>>> line
>>>>>>>>>> 40, in init_app
>>>>>>>>>> DriverRegistry.load_drivers()
>>>>>>>>>> File "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/web/pgadmin/utils/driver/registry.py",
>>>>>>>>>> line
>>>>>>>>>> 88, in load_drivers
>>>>>>>>>> module = import_module(module_name)
>>>>>>>>>> File "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/importlib/__init__.py",
>>>>>>>>>> line
>>>>>>>>>> 37, in import_module
>>>>>>>>>> __import__(name)
>>>>>>>>>> File "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/web/pgadmin/utils/driver/psycopg2/_
>>>>>>>>>> _init__.py",
>>>>>>>>>> line 23, in <module>
>>>>>>>>>> import psycopg2
>>>>>>>>>> File "/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>>>>> pg2/__init__.py",
>>>>>>>>>> line 50, in <module>
>>>>>>>>>> from psycopg2._psycopg import BINARY, NUMBER, STRING,
>>>>>>>>>> DATETIME, ROWID
>>>>>>>>>> ImportError: dlopen(/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>>>>> pg2/_psycopg.so,
>>>>>>>>>> 2): Library not loaded:
>>>>>>>>>> @loader_path/../../../../../../../Contents/Frameworks/libssl
>>>>>>>>>> .1.0.0.dylib
>>>>>>>>>> Referenced from: /Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>>>>> pg2/_psycopg.so
>>>>>>>>>> Reason: no suitable image found. Did find:
>>>>>>>>>> /Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>>>>> pg2/../../../../../../../Contents/Frameworks/libssl.1.0.0.dylib:
>>>>>>>>>> code signature invalid for '/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>>>>> pg2/../../../../../../../Contents/Frameworks/libssl.1.0.0.dylib'
>>>>>>>>>>
>>>>>>>>>> /Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>>>>> pg2/../../../../../../../Contents/Frameworks/libssl.1.0.0.dylib:
>>>>>>>>>> code signature invalid for '/Applications/pgAdmin
>>>>>>>>>> 4.app/Contents/Resources/venv/lib/python/site-packages/psyco
>>>>>>>>>> pg2/../../../../../../../Contents/Frameworks/libssl.1.0.0.dylib'
>>>>>>>>>>
>>>>>>>>> Looks the bundled libssl is not valid.
>>>>>>>>>
>>>>>>>>> Can you verify it?
>>>>>>>>> i.e.
>>>>>>>>> codesign --verbose --verify /Applications/pgAdmin 4.app/Conte
>>>>>>>>> nts/Frameworks/libssl.1.0.0.dylib
>>>>>>>>>
>>>>>>>>> -- Thanks,
>>>>>>>>> Ashesh Vashi
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> /usr/lib/libssl.1.0.0.dylib: code signature invalid for
>>>>>>>>>> '/usr/lib/libssl.1.0.0.dylib'
>>>>>>>>>>
>>>>>>>>>> Initial connection failed. Retrying in 2 seconds.
>>>>>>>>>> Initial connection failed. Retrying in 3 seconds.
>>>>>>>>>> Initial connection failed. Retrying in 4 seconds.
>>>>>>>>>> Initial connection failed after multiple attempts. Aborting.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Tue, Feb 21, 2017 at 9:44 AM, Dave Page <dpage(at)pgadmin(dot)org>
>>>>>>>>>> wrote:
>>>>>>>>>> > I don't know then I'm afraid. Ashesh, any idea what's going on?
>>>>>>>>>> Maciek
>>>>>>>>>> > is seeing the error below, however the signature on the app
>>>>>>>>>> bundle
>>>>>>>>>> > verifies OK:
>>>>>>>>>> >
>>>>>>>>>> >
>>>>>>>>>> > On Tue, Feb 21, 2017 at 6:44 AM, matshyeq <matshyeq(at)gmail(dot)com>
>>>>>>>>>> wrote:
>>>>>>>>>> >> Hi Dave,
>>>>>>>>>> >>
>>>>>>>>>> >> I did as you told. No joy ;(
>>>>>>>>>> >>
>>>>>>>>>> >> Thank you,
>>>>>>>>>> >> Kind Regards
>>>>>>>>>> >> ~Maciek
>>>>>>>>>> >>
>>>>>>>>>> >> On 20 February 2017 at 10:48, Dave Page <dpage(at)pgadmin(dot)org>
>>>>>>>>>> wrote:
>>>>>>>>>> >>>
>>>>>>>>>> >>> Hi
>>>>>>>>>> >>>
>>>>>>>>>> >>> On Mon, Feb 20, 2017 at 7:43 AM, matshyeq <matshyeq(at)gmail(dot)com>
>>>>>>>>>> wrote:
>>>>>>>>>> >>> > Hi Dave,
>>>>>>>>>> >>> >
>>>>>>>>>> >>> > Not sure what you meant. I've overwritten app from DMG -
>>>>>>>>>> same result :(
>>>>>>>>>> >>>
>>>>>>>>>> >>> I mean delete the existing app, then copy it again from the
>>>>>>>>>> DMG. Don't
>>>>>>>>>> >>> copy a new version over the old one (as that might merge the
>>>>>>>>>> two
>>>>>>>>>> >>> versions, as appbundles are really just a directory structure
>>>>>>>>>> full of
>>>>>>>>>> >>> files).
>>>>>>>>>> >>>
>>>>>>>>>> >>> --
>>>>>>>>>> >>> Dave Page
>>>>>>>>>> >>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>> >>> Twitter: @pgsnake
>>>>>>>>>> >>>
>>>>>>>>>> >>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>> >>> The Enterprise PostgreSQL Company
>>>>>>>>>> >>
>>>>>>>>>> >>
>>>>>>>>>> >
>>>>>>>>>> >
>>>>>>>>>> >
>>>>>>>>>> > --
>>>>>>>>>> > Dave Page
>>>>>>>>>> > Blog: http://pgsnake.blogspot.com
>>>>>>>>>> > Twitter: @pgsnake
>>>>>>>>>> >
>>>>>>>>>> > EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>> > The Enterprise PostgreSQL Company
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Dave Page
>>>>>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>>>>>> Twitter: @pgsnake
>>>>>>>>>>
>>>>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>>>>>> The Enterprise PostgreSQL Company
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Sent via pgadmin-support mailing list (
>>>>>>>>>> pgadmin-support(at)postgresql(dot)org)
>>>>>>>>>> To make changes to your subscription:
>>>>>>>>>> http://www.postgresql.org/mailpref/pgadmin-support
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Sandeep Thakkar
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> Sandeep Thakkar
>>>
>>>
>>>
>>>
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
>
> --
> Sandeep Thakkar
>
>
>
>

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgadmin-support by date

  From Date Subject
Next Message Sibylle Koczian 2017-02-22 15:19:16 Re: Backup database runs forever
Previous Message Sandeep Thakkar 2017-02-22 13:23:08 Re: Mac OS X error for pgAdmin 4.1.2