xpra icon
Bug tracker and wiki

Opened 4 years ago

Closed 4 years ago

#413 closed defect (invalid)

fix csc_nvcuda compilation on win32

Reported by: Antoine Martin Owned by: ahuillet
Priority: major Milestone: 0.11
Component: core Version:
Keywords: Cc:

Description (last modified by Antoine Martin)

Assuming that this module can be made to work reliably, we want the build to succeed on win32 too. The module can then be used for win32 shadow servers, or for client side csc (with video encodings on non-gl windows).

At the moment, it does not (r4127 is needed for setting up the build path):

C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 \
    /GS- /DNDEBUG -IE:\xpra\trunk\src\win32 -IC:\NVIDIA\CUDA\CUDAToolkit\include \
    -IC:\Python27\include -IC:\Python27\PC \
    /Tcxpra/codecs/csc_nvcuda/csc_nvcuda.c \
    /Fobuild\temp.win32-2.7\Release\xpra/codecs/csc_nvcuda/csc_nvcuda.obj
csc_nvcuda.c
xpra/codecs/csc_nvcuda/csc_nvcuda.c(69) : error C2059: syntax error : '['
xpra/codecs/csc_nvcuda/csc_nvcuda.c(76) : error C2059: syntax error : '['
xpra/codecs/csc_nvcuda/csc_nvcuda.c(83) : error C2059: syntax error : '['
xpra/codecs/csc_nvcuda/csc_nvcuda.c(112) : warning C4034: sizeof returns 0
xpra/codecs/csc_nvcuda/csc_nvcuda.c(129) : warning C4034: sizeof returns 0
xpra/codecs/csc_nvcuda/csc_nvcuda.c(131) : warning C4034: sizeof returns 0
xpra/codecs/csc_nvcuda/csc_nvcuda.c(141) : error C2275: 'va_list' : illegal use of this type as an expression

Looks like MSVC is being a bit behind the times again?

Change History (6)

comment:1 Changed 4 years ago by Antoine Martin

Description: modified (diff)

comment:2 Changed 4 years ago by Antoine Martin

Description: modified (diff)

comment:3 Changed 4 years ago by ahuillet

client side csc (with video encodings on non-gl windows).

This use case is unrealistic. If you can do Cuda, you can do GL equally well, and Cuda setup times as well as stability means you'll want to do GL *more* than Cuda. Such a use case would be a waste of time.

Also, as it stands, csc_nvcuda doesn't even work on Linux. Bothering with Windows at this point is not a worthy goal.

comment:4 Changed 4 years ago by Antoine Martin

This use case is unrealistic

There is another uses case listed (ie: shadow server) and I can think of a few more, having code that builds on as many platforms as possible is a worthy goal in itself. And the fix doesn't look too hard either.

Also, as it stands, csc_nvcuda doesn't even work on Linux

That's why this ticket is scheduled for 0.11 and I also said: Assuming that this module can be made to work reliably

comment:5 Changed 4 years ago by Antoine Martin

Another way of dealing with this is to remove our glue layer and use PyCUDA which will make dealing with contexts a lot nicer and more OO-like.

Calling NPP functions is documented in NPP and OpenCV webcam app in Python

Last edited 4 years ago by Antoine Martin (previous) (diff)

comment:6 Changed 4 years ago by Antoine Martin

Resolution: invalid
Status: newclosed

We now use pycuda which solves this problem, for further details see #384

(NPP is useless to us, and the C code to interface with it was very heavy)

Note: See TracTickets for help on using tickets.