[Blink] Error when installing blink-qt ( _rfb.pyx )
Robert Dyck
rob.dyck at telus.net
Mon Jul 22 00:16:43 CEST 2024
When executing "sudo python3 setup.py install" I get many errors.
Errors similar to the following --
blink/screensharing/_rfb.pyx:453:44: Cannot assign type 'void (const
char *, ...) except * nogil' to 'rfbClientLogProc' (alias of 'void (*)(const
char *, ...) noexcept'). Ex
ception values are incompatible. Suggest adding 'noexcept' to the
type of '_rfb_client_log'.
Can someone tell me how to resolve this. I am attaching the complete
session.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ag-projects.com/pipermail/blink/attachments/20240721/a16e4b48/attachment.htm>
-------------- next part --------------
Compiling blink/screensharing/_rfb.pyx because it changed.
[1/1] Cythonizing blink/screensharing/_rfb.pyx
/usr/lib64/python3.12/site-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /home/rdyck/Downloads/blink-qt/blink/screensharing/_rfb.pyx
tree = Parsing.p_module(s, pxd, full_module_name)
performance hint: blink/screensharing/_rfb.pyx:415:5: Exception check on '_update_framebuffer_callback' will always require the GIL to be acquired.
Possible solutions:
1. Declare '_update_framebuffer_callback' as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
2. Use an 'int' return type on '_update_framebuffer_callback' to allow an error code to be returned.
performance hint: blink/screensharing/_rfb.pyx:419:5: Exception check on '_update_cursor_callback' will always require the GIL to be acquired.
Possible solutions:
1. Declare '_update_cursor_callback' as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
2. Use an 'int' return type on '_update_cursor_callback' to allow an error code to be returned.
performance hint: blink/screensharing/_rfb.pyx:435:5: Exception check on '_text_cut_callback' will always require the GIL to be acquired.
Possible solutions:
1. Declare '_text_cut_callback' as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
2. Use an 'int' return type on '_text_cut_callback' to allow an error code to be returned.
performance hint: blink/screensharing/_rfb.pyx:440:5: Exception check on '_rfb_client_log' will always require the GIL to be acquired.
Possible solutions:
1. Declare '_rfb_client_log' as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
2. Use an 'int' return type on '_rfb_client_log' to allow an error code to be returned.
Error compiling Cython file:
------------------------------------------------------------
...
message = (<bytes>buffer).rstrip()
NotificationCenter().post_notification('RFBClientLog', data=NotificationData(message=message.decode('utf8'), thread=QThread.currentThread()))
cdef extern rfbClientLogProc rfbClientLog = _rfb_client_log
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:453:44: Cannot assign type 'void (const char *, ...) except * nogil' to 'rfbClientLogProc' (alias of 'void (*)(const char *, ...) noexcept'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_rfb_client_log'.
Error compiling Cython file:
------------------------------------------------------------
...
NotificationCenter().post_notification('RFBClientLog', data=NotificationData(message=message.decode('utf8'), thread=QThread.currentThread()))
cdef extern rfbClientLogProc rfbClientLog = _rfb_client_log
cdef extern rfbClientLogProc rfbClientErr = _rfb_client_log
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:454:44: Cannot assign type 'void (const char *, ...) except * nogil' to 'rfbClientLogProc' (alias of 'void (*)(const char *, ...) noexcept'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_rfb_client_log'.
Error compiling Cython file:
------------------------------------------------------------
...
self.client.clientData = client_data
self.client.serverHost = server_host
self.client.serverPort = parent.port
self.client.canHandleNewFBSize = True
self.client.appData.useRemoteCursor = False
self.client.MallocFrameBuffer = _malloc_framebuffer_callback
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:183:40: Cannot assign type 'rfbBool (rfbClient *) except? -1 nogil' to 'MallocFrameBufferProc' (alias of 'rfbBool (*)(_rfbClient *) noexcept nogil'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_malloc_framebuffer_callback'.
Error compiling Cython file:
------------------------------------------------------------
...
self.client.serverHost = server_host
self.client.serverPort = parent.port
self.client.canHandleNewFBSize = True
self.client.appData.useRemoteCursor = False
self.client.MallocFrameBuffer = _malloc_framebuffer_callback
self.client.GotFrameBufferUpdate = _update_framebuffer_callback
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:184:43: Cannot assign type 'void (rfbClient *, int, int, int, int) except * nogil' to 'GotFrameBufferUpdateProc' (alias of 'void (*)(_rfbClient *, int, int, int, int) noexcept nogil'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_update_framebuffer_callback'.
Error compiling Cython file:
------------------------------------------------------------
...
self.client.serverPort = parent.port
self.client.canHandleNewFBSize = True
self.client.appData.useRemoteCursor = False
self.client.MallocFrameBuffer = _malloc_framebuffer_callback
self.client.GotFrameBufferUpdate = _update_framebuffer_callback
self.client.GotCursorShape = _update_cursor_callback
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:185:37: Cannot assign type 'void (rfbClient *, int, int, int, int, int) except * nogil' to 'GotCursorShapeProc' (alias of 'void (*)(_rfbClient *, int, int, int, int, int) noexcept'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_update_cursor_callback'.
Error compiling Cython file:
------------------------------------------------------------
...
self.client.canHandleNewFBSize = True
self.client.appData.useRemoteCursor = False
self.client.MallocFrameBuffer = _malloc_framebuffer_callback
self.client.GotFrameBufferUpdate = _update_framebuffer_callback
self.client.GotCursorShape = _update_cursor_callback
self.client.HandleCursorPos = _update_cursor_position_callback
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:186:38: Cannot assign type 'rfbBool (rfbClient *, int, int) except? -1 nogil' to 'HandleCursorPosProc' (alias of 'rfbBool (*)(_rfbClient *, int, int) noexcept'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_update_cursor_position_callback'.
Error compiling Cython file:
------------------------------------------------------------
...
self.client.appData.useRemoteCursor = False
self.client.MallocFrameBuffer = _malloc_framebuffer_callback
self.client.GotFrameBufferUpdate = _update_framebuffer_callback
self.client.GotCursorShape = _update_cursor_callback
self.client.HandleCursorPos = _update_cursor_position_callback
self.client.GetPassword = _get_password_callback
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:187:34: Cannot assign type 'char *(rfbClient *) except? NULL nogil' to 'GetPasswordProc' (alias of 'char *(*)(_rfbClient *) noexcept nogil'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_get_password_callback'.
Error compiling Cython file:
------------------------------------------------------------
...
self.client.MallocFrameBuffer = _malloc_framebuffer_callback
self.client.GotFrameBufferUpdate = _update_framebuffer_callback
self.client.GotCursorShape = _update_cursor_callback
self.client.HandleCursorPos = _update_cursor_position_callback
self.client.GetPassword = _get_password_callback
self.client.GetCredential = _get_credentials_callback
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:188:36: Cannot assign type 'rfbCredential *(rfbClient *, int) except? NULL nogil' to 'GetCredentialProc' (alias of 'rfbCredential *(*)(_rfbClient *, int) noexcept nogil'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_get_credentials_callback'.
Error compiling Cython file:
------------------------------------------------------------
...
self.client.GotFrameBufferUpdate = _update_framebuffer_callback
self.client.GotCursorShape = _update_cursor_callback
self.client.HandleCursorPos = _update_cursor_position_callback
self.client.GetPassword = _get_password_callback
self.client.GetCredential = _get_credentials_callback
self.client.GotXCutText = _text_cut_callback
^
------------------------------------------------------------
blink/screensharing/_rfb.pyx:189:34: Cannot assign type 'void (rfbClient *, const char *, int) except * nogil' to 'GotXCutTextProc' (alias of 'void (*)(_rfbClient *, const char *, int) noexcept nogil'). Exception values are incompatible. Suggest adding 'noexcept' to the type of '_text_cut_callback'.
Traceback (most recent call last):
File "/home/rdyck/Downloads/blink-qt/setup.py", line 54, in <module>
ext_modules=cythonize([Extension(name="blink.screensharing._rfb", sources=["blink/screensharing/_rfb.pyx"], libraries=["vncclient"])]),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.12/site-packages/Cython/Build/Dependencies.py", line 1154, in cythonize
cythonize_one(*args)
File "/usr/lib64/python3.12/site-packages/Cython/Build/Dependencies.py", line 1321, in cythonize_one
raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: blink/screensharing/_rfb.pyx
More information about the Blink
mailing list