Unable to launch PsychoPy from pip installation on MacOS Catalina 10.15.7

Hey everybody,

I tried to install PsychoPy via pip Installation on MacOS since I wanted to use PsychoPy with my preinstalled version of Python. However, when I try to launch the psychopyApp.py, it always breaks with the following error message:

2020-10-14 11:39:06.489 python[27857:1211461] -[NSApplication transformToForegroundApplication]: unrecognized selector sent to instance 0x7f919cda61a0
2020-10-14 11:39:06.505 python[27857:1211461] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSApplication transformToForegroundApplication]: unrecognized selector sent to instance 0x7f919cda61a0'
*** First throw call stack:
(
	0   CoreFoundation                      0x00007fff2e769b57 __exceptionPreprocess + 250
	1   libobjc.A.dylib                     0x00007fff675b55bf objc_exception_throw + 48
	2   CoreFoundation                      0x00007fff2e7e8be7 -[NSObject(NSObject) __retain_OA] + 0
	3   CoreFoundation                      0x00007fff2e6ce3bb ___forwarding___ + 1427
	4   CoreFoundation                      0x00007fff2e6cdd98 _CF_forwarding_prep_0 + 120
	5   libwx_osx_cocoau_core-3.1.4.0.0.dyl 0x00000001075df156 _ZN5wxApp9DoInitGuiEv + 262
	6   _core.cpython-36m-darwin.so         0x0000000106b12642 _ZN10sipwxPyApp9OnInitGuiEv + 98
	7   libwx_osx_cocoau_core-3.1.4.0.0.dyl 0x000000010762cbe5 _ZN5wxApp10InitializeERiPPw + 181
	8   libwx_baseu-3.1.4.0.0.dylib         0x0000000107e1bd2b _Z12wxEntryStartRiPPw + 171
	9   _core.cpython-36m-darwin.so         0x0000000106b11cd6 _ZN7wxPyApp13_BootstrapAppEv + 470
	10  _core.cpython-36m-darwin.so         0x0000000106b15db4 _ZL26meth_wxPyApp__BootstrapAppP7_objectS0_ + 100
	11  python                              0x00000001056881c6 _PyCFunction_FastCallDict + 166
	12  python                              0x0000000105714de1 call_function + 497
	13  python                              0x0000000105711c34 _PyEval_EvalFrameDefault + 24756
	14  python                              0x00000001057158be _PyEval_EvalCodeWithName + 2590
	15  python                              0x000000010571601a fast_function + 362
	16  python                              0x0000000105714dba call_function + 458
	17  python                              0x0000000105711c34 _PyEval_EvalFrameDefault + 24756
	18  python                              0x00000001057158be _PyEval_EvalCodeWithName + 2590
	19  python                              0x00000001057163d0 _PyFunction_FastCallDict + 560
	20  python                              0x000000010563d07d _PyObject_FastCallDict + 173
	21  python                              0x000000010563d203 _PyObject_Call_Prepend + 131
	22  python                              0x000000010563cec5 PyObject_Call + 101
	23  python                              0x00000001056a08cd slot_tp_init + 157
	24  python                              0x000000010569cb44 type_call + 292
	25  python                              0x000000010563d111 _PyObject_FastCallDict + 321
	26  python                              0x000000010563d4e5 _PyObject_FastCallKeywords + 197
	27  python                              0x0000000105714daa call_function + 442
	28  python                              0x0000000105711cd4 _PyEval_EvalFrameDefault + 24916
	29  python                              0x00000001057160b9 fast_function + 521
	30  python                              0x0000000105714dba call_function + 458
	31  python                              0x0000000105711c34 _PyEval_EvalFrameDefault + 24756
	32  python                              0x00000001057160b9 fast_function + 521
	33  python                              0x0000000105714dba call_function + 458
	34  python                              0x0000000105711c34 _PyEval_EvalFrameDefault + 24756
	35  python                              0x00000001057158be _PyEval_EvalCodeWithName + 2590
	36  python                              0x000000010570baf0 PyEval_EvalCode + 48
	37  python                              0x0000000105742ece PyRun_FileExFlags + 174
	38  python                              0x00000001057423cc PyRun_SimpleFileExFlags + 268
	39  python                              0x000000010575d151 Py_Main + 3249
	40  python                              0x0000000105631e91 main + 257
	41  libdyld.dylib                       0x00007fff6875dcc9 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
[1]    27857 abort      python app/psychopyApp.py

This happens either when executing the app via Terminal or via a Python IDE like PyCharme. I am a little bit lost on this error since I could’t find a solution in the internet by now. Unfortunately, the error seems to be not very specific, as I found different kinds of problems for similar error messages. However, related solutions never worked out for me and I don’t really know how to specify further. So, suggestions on a better error handling are also very appreciated.

I am using MacOS Catalina 10.15.7 and tried Python versions 3.6.1 and 3.8.6 (pyenv installations). The PsychoPy Standalone is launching and running without problems (so it is not urgent but I would prefer to run under my own Python version + I’m interested what causes this error).

Would be very happy if someone could help me with this! Thanks.

Hi,

I’ve experienced a similar problem and I am almost sure I solved it by installing an older version of wxPython

pip install wxPython==4.0.1

1 Like

Hi!

thanks for your quick suggestion. I tried downgrading wxPython but it had no effect. Based on your suggestion I also checked the requirements doc inside PsychoPy but all requirements for specific package versions are met…

But you were right, wxPython should be != 4.0.2 and =! 4.0.3. However, neither using wxPython actual version (4.1.0) nor the downgraded version 4.0.1 made any difference.

I checked again and it indeed doesn’t solve the issue, I am now seeing the same crash regardless of wxPython version (and I’m on Mojave).

It does work for me if I install and run PsychoPy on the system’s global python (3.7.9 installed via homebrew). When I use the same python interpreter in a vritualenv, it crashes.