Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New driver support (version 510.47.03) #493

Closed
1 task done
LionHeartP opened this issue Feb 1, 2022 · 25 comments
Closed
1 task done

New driver support (version 510.47.03) #493

LionHeartP opened this issue Feb 1, 2022 · 25 comments

Comments

@LionHeartP
Copy link
Contributor

LionHeartP commented Feb 1, 2022

Please provide details about your environment (please complete the following information)

  • Nvidia driver version: 510.47.03
  • GPU Model: RTX 3070
  • OS: Arch Linux
  • I'm willing to participate in testing of new patch version
@LionHeartP LionHeartP changed the title New driver support (version 510.47) New driver support (version 510.47.03) Feb 3, 2022
@LionHeartP
Copy link
Contributor Author

Just as an FYI I tried using the previous addresses to patch this version but it didn't work, at least for the FBC one.

@mauricioquintela
Copy link

I tried it with the addresses listed in #487 (updating of course ["510.39.01"] to ["510.47.03"]), and fbc is working fine for me. Haven't tested nvenc yet.

@nathan-t-sudo
Copy link

added the following patch on my end
and its working fine

diff --git a/drivers.json b/drivers.json
index 1e5990b..f801a10 100644
--- a/drivers.json
+++ b/drivers.json
@@ -667,6 +667,12 @@


                     "nvenc_patch": true,
                     "nvfbc_patch": true,
                     "driver_url": "https://international.download.nvidia.com/XFree86/Linux-x86_64/470.94/NVIDIA-Linux-x86_64-470.94.run"

+                },
+                {
+                    "version": "510.47.03",
+                    "nvenc_patch": true,
+                    "nvfbc_patch": true,
+          
          "driver_url": "https://download.nvidia.com/XFree86/Linux-x86_64/510.47.03/NVIDIA-Linux-x86_64-510.47.03.run"
                 }

             ],
             "example": {
              

diff --git a/patch.sh b/patch.sh
index 690b009..9dd4cd5 100755
--- a/patch.sh
+++ b/patch.sh
@@ -173,6 +173,7 @@ declare -A patch_list=(
["495.29.05"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g'
["495.44"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g'
["495.46"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g'
+ ["510.47.03"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g'
)

declare -A object_list=(
@@ -292,6 +293,8 @@ declare -A object_list=(
["495.29.05"]='libnvidia-encode.so'
["495.44"]='libnvidia-encode.so'
["495.46"]='libnvidia-encode.so'
+ ["510.47.03"]='libnvidia-encode.so'

)

check_version_supported () {

diff --git a/patch-fbc.sh b/patch-fbc.sh
index 2eced4c..41bc841 100755
--- a/patch-fbc.sh
+++ b/patch-fbc.sh
@@ -135,6 +135,7 @@ declare -A patch_list=(
["495.29.05"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/'
["495.44"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/'
["495.46"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/'
+ ["510.47.03"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/'
)

declare -A object_list=(
@@ -218,6 +219,7 @@ declare -A object_list=(
["495.29.05"]='libnvidia-fbc.so'
["495.44"]='libnvidia-fbc.so'
["495.46"]='libnvidia-fbc.so'
+ ["510.47.03"]='libnvidia-fbc.so'
)

check_version_supported () {

@LionHeartP
Copy link
Contributor Author

added the following patch on my end and its working fine

diff --git a/drivers.json b/drivers.json index 1e5990b..f801a10 100644 --- a/drivers.json +++ b/drivers.json @@ -667,6 +667,12 @@


                     "nvenc_patch": true,
                     "nvfbc_patch": true,
                     "driver_url": "https://international.download.nvidia.com/XFree86/Linux-x86_64/470.94/NVIDIA-Linux-x86_64-470.94.run"

+                },
+                {
+                    "version": "510.47.03",
+                    "nvenc_patch": true,
+                    "nvfbc_patch": true,
+          
          "driver_url": "https://download.nvidia.com/XFree86/Linux-x86_64/510.47.03/NVIDIA-Linux-x86_64-510.47.03.run"
                 }

             ],
             "example": {
              

diff --git a/patch.sh b/patch.sh index 690b009..9dd4cd5 100755 --- a/patch.sh +++ b/patch.sh @@ -173,6 +173,7 @@ declare -A patch_list=( ["495.29.05"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g' ["495.44"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g' ["495.46"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g' + ["510.47.03"]='s/\xe8\x35\x1f\xff\xff\x85\xc0\x41\x89\xc4/\xe8\x35\x1f\xff\xff\x29\xc0\x41\x89\xc4/g' )

declare -A object_list=( @@ -292,6 +293,8 @@ declare -A object_list=( ["495.29.05"]='libnvidia-encode.so' ["495.44"]='libnvidia-encode.so' ["495.46"]='libnvidia-encode.so' + ["510.47.03"]='libnvidia-encode.so'

)

check_version_supported () {

diff --git a/patch-fbc.sh b/patch-fbc.sh index 2eced4c..41bc841 100755 --- a/patch-fbc.sh +++ b/patch-fbc.sh @@ -135,6 +135,7 @@ declare -A patch_list=( ["495.29.05"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/' ["495.44"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/' ["495.46"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/' + ["510.47.03"]='s/\x83\xfe\x01\x73\x08\x48/\x83\xfe\x00\x72\x08\x48/' )

declare -A object_list=( @@ -218,6 +219,7 @@ declare -A object_list=( ["495.29.05"]='libnvidia-fbc.so' ["495.44"]='libnvidia-fbc.so' ["495.46"]='libnvidia-fbc.so' + ["510.47.03"]='libnvidia-fbc.so' )

check_version_supported () {

Confirmed working fine.

@LionHeartP
Copy link
Contributor Author

LionHeartP commented Feb 5, 2022

Created a PR with this patch. Please test.

#494

@didyouexpectthat
Copy link

This doesn't work for me.

# ./patch.sh
Detected nvidia driver version: 510.47.03
Attention! Backup not found. Copying current libnvidia-encode.so to backup.
09ff74cd645a2309afebf21a28f5a42934e0a0f7  /opt/nvidia/libnvidia-encode-backup/libnvidia-encode.so.510.47.03
09ff74cd645a2309afebf21a28f5a42934e0a0f7  /usr/lib/x86_64-linux-gnu/libnvidia-encode.so.510.47.03
Patched!

Old and new are the same.

# ./patch-fbc.sh
Detected nvidia driver version: 510.47.03
Attention! Backup not found. Copying current libnvidia-fbc.so to backup.
e58b9b7e6f4e55fc7c6e077ef534c5bd70576d92  /opt/nvidia/libnvidia-fbc-backup/libnvidia-fbc.so.510.47.03
4c8571afd264a74321d9f2ef6409f70024f2858b  /usr/lib/x86_64-linux-gnu/libnvidia-fbc.so.510.47.03
Patched!

This seems to have done something.

@dor7to
Copy link

dor7to commented Feb 7, 2022

Created a PR with this patch. Please test.

#494

works good on my end, cheers.

# ./patch.sh 
Detected nvidia driver version: 510.47.03
Attention! Backup not found. Copying current libnvidia-encode.so to backup.
09ff74cd645a2309afebf21a28f5a42934e0a0f7  /opt/nvidia/libnvidia-encode-backup/libnvidia-encode.so.510.47.03
09ff74cd645a2309afebf21a28f5a42934e0a0f7  /usr/lib64/libnvidia-encode.so.510.47.03
Patched!
# ./patch-fbc.sh 
Detected nvidia driver version: 510.47.03
Attention! Backup not found. Copying current libnvidia-fbc.so to backup.
e58b9b7e6f4e55fc7c6e077ef534c5bd70576d92  /opt/nvidia/libnvidia-fbc-backup/libnvidia-fbc.so.510.47.03
4c8571afd264a74321d9f2ef6409f70024f2858b  /usr/lib64/libnvidia-fbc.so.510.47.03
Patched!

edit: yep no, patch.sh is no good but yeah fbc is. mb

@didyouexpectthat
Copy link

Created a PR with this patch. Please test.
#494

works good on my end, cheers.

# ./patch.sh 
Detected nvidia driver version: 510.47.03
Attention! Backup not found. Copying current libnvidia-encode.so to backup.
09ff74cd645a2309afebf21a28f5a42934e0a0f7  /opt/nvidia/libnvidia-encode-backup/libnvidia-encode.so.510.47.03
09ff74cd645a2309afebf21a28f5a42934e0a0f7  /usr/lib64/libnvidia-encode.so.510.47.03
Patched!
# ./patch-fbc.sh 
Detected nvidia driver version: 510.47.03
Attention! Backup not found. Copying current libnvidia-fbc.so to backup.
e58b9b7e6f4e55fc7c6e077ef534c5bd70576d92  /opt/nvidia/libnvidia-fbc-backup/libnvidia-fbc.so.510.47.03
4c8571afd264a74321d9f2ef6409f70024f2858b  /usr/lib64/libnvidia-fbc.so.510.47.03
Patched!

Your checksum is the same also for the patch. I don't think it successfully patched, otherwise, the checksum would be different, like on patch-fbc.

@Czar102
Copy link

Czar102 commented Feb 9, 2022

Same as above
#494 (comment)

@LionHeartP
Copy link
Contributor Author

I would suggest to the people that can't get patch.sh working, to maybe try out this.
https://github.com/illnyang/nvlax
If you are on Arch, prepatched drivers already exist on AUR as well as nvlax itself. You can also make it work with flatpak apps by pointing it to the runtime .so files.

I think something has changed on Nvidia's end, and we need different addresses for patch.sh

@LionHeartP
Copy link
Contributor Author

Reverted the nvenc patch on my PR #494

@GenocideStomper
Copy link

If you are on Arch, prepatched drivers already exist on AUR

What's the package called?

@Czar102
Copy link

Czar102 commented Feb 9, 2022

Thanks a lot for help!
I tried to use https://github.com/illnyang/nvlax, but I ran into some compilation errors.

This has already been observed: illnyang/nvlax#11

There is a pull request made by tytan652 that aims to fix this error.
He also made an AUR package -- https://aur.archlinux.org/packages/nvidia-utils-nvlax
But I am still having compilation errors, even in the patched repo/AUR package...

@LionHeartP
Copy link
Contributor Author

If you are on Arch, prepatched drivers already exist on AUR

What's the package called?

nvidia-utils-nvlax as mentioned in the post above this one

@LionHeartP
Copy link
Contributor Author

Thanks a lot for help! I tried to use https://github.com/illnyang/nvlax, but I ran into some compilation errors.

This has already been observed: illnyang/nvlax#11

There is a pull request made by tytan652 that aims to fix this error. He also made an AUR package -- https://aur.archlinux.org/packages/nvidia-utils-nvlax But I am still having compilation errors, even in the patched repo/AUR package...

Tytan also made an nvlax package for AUR that also fixes the compilation error if you're interested. It's called nvlax-git

@ConstBur
Copy link

ConstBur commented Feb 9, 2022

I get a compilation error with nvlax-git as well, here are the logs where it crashed:

[ 95%] Building CXX object CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc: In function ‘int main(int, char**)’:
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:40:27: error: request for member ‘virtual_address’ in ‘s_rodata’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   40 |         offset = s_rodata.virtual_address() + s_rodata.search("This hardware does not support NvFBC");
      |                           ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:40:56: error: request for member ‘search’ in ‘s_rodata’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   40 |         offset = s_rodata.virtual_address() + s_rodata.search("This hardware does not support NvFBC");
      |                                                        ^~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:52:38: error: request for member ‘content’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   52 |         auto v_text_content = s_text.content();
      |                                      ^~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:61:38: error: request for member ‘virtual_address’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   61 |                 size_t temp = s_text.virtual_address() +
      |                                      ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:67:37: error: request for member ‘virtual_address’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   67 |                     offset = s_text.virtual_address() + data - v_text_content.data();
      |                                     ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc: In function ‘void patch_linux(LIEF::ELF::Binary*)’:
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc:45:78: error: request for member ‘value’ in ‘f_nvenc_ci’, which is of pointer type ‘LIEF::Symbol*’ (maybe you meant to use ‘->’ ?)
   45 |         auto v_func_bytes = bin->get_content_from_virtual_address(f_nvenc_ci.value(), 0x260);
      |                                                                              ^~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc:53:37: error: request for member ‘value’ in ‘f_nvenc_ci’, which is of pointer type ‘LIEF::Symbol*’ (maybe you meant to use ‘->’ ?)
   53 |                 offset = f_nvenc_ci.value() +
      |                                     ^~~~~
make[2]: *** [CMakeFiles/nvlax_fbc.dir/build.make:90: CMakeFiles/nvlax_fbc.dir/src/lax_fbc.cc.o] Error 1
make[2]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make[1]: *** [CMakeFiles/Makefile2:219: CMakeFiles/nvlax_fbc.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/nvlax_encode.dir/build.make:90: CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o] Error 1
make[2]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make[1]: *** [CMakeFiles/Makefile2:190: CMakeFiles/nvlax_encode.dir/all] Error 2
make[1]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make: *** [Makefile:136: all] Error 2
make: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
==> ERROR: A failure occurred in build().
    Aborting...

@LionHeartP
Copy link
Contributor Author

I get a compilation error with nvlax-git as well, here are the logs where it crashed:

[ 95%] Building CXX object CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc: In function ‘int main(int, char**)’:
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:40:27: error: request for member ‘virtual_address’ in ‘s_rodata’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   40 |         offset = s_rodata.virtual_address() + s_rodata.search("This hardware does not support NvFBC");
      |                           ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:40:56: error: request for member ‘search’ in ‘s_rodata’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   40 |         offset = s_rodata.virtual_address() + s_rodata.search("This hardware does not support NvFBC");
      |                                                        ^~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:52:38: error: request for member ‘content’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   52 |         auto v_text_content = s_text.content();
      |                                      ^~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:61:38: error: request for member ‘virtual_address’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   61 |                 size_t temp = s_text.virtual_address() +
      |                                      ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:67:37: error: request for member ‘virtual_address’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   67 |                     offset = s_text.virtual_address() + data - v_text_content.data();
      |                                     ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc: In function ‘void patch_linux(LIEF::ELF::Binary*)’:
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc:45:78: error: request for member ‘value’ in ‘f_nvenc_ci’, which is of pointer type ‘LIEF::Symbol*’ (maybe you meant to use ‘->’ ?)
   45 |         auto v_func_bytes = bin->get_content_from_virtual_address(f_nvenc_ci.value(), 0x260);
      |                                                                              ^~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc:53:37: error: request for member ‘value’ in ‘f_nvenc_ci’, which is of pointer type ‘LIEF::Symbol*’ (maybe you meant to use ‘->’ ?)
   53 |                 offset = f_nvenc_ci.value() +
      |                                     ^~~~~
make[2]: *** [CMakeFiles/nvlax_fbc.dir/build.make:90: CMakeFiles/nvlax_fbc.dir/src/lax_fbc.cc.o] Error 1
make[2]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make[1]: *** [CMakeFiles/Makefile2:219: CMakeFiles/nvlax_fbc.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/nvlax_encode.dir/build.make:90: CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o] Error 1
make[2]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make[1]: *** [CMakeFiles/Makefile2:190: CMakeFiles/nvlax_encode.dir/all] Error 2
make[1]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make: *** [Makefile:136: all] Error 2
make: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
==> ERROR: A failure occurred in build().
    Aborting...

Ah pamac. This must be Manjaro? I compiled it successfully like 3-4 days ago on arch using yay.
Maybe Manjaro is missing something from the latest arch repos?

@ConstBur
Copy link

ConstBur commented Feb 9, 2022

I get a compilation error with nvlax-git as well, here are the logs where it crashed:

[ 95%] Building CXX object CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc: In function ‘int main(int, char**)’:
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:40:27: error: request for member ‘virtual_address’ in ‘s_rodata’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   40 |         offset = s_rodata.virtual_address() + s_rodata.search("This hardware does not support NvFBC");
      |                           ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:40:56: error: request for member ‘search’ in ‘s_rodata’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   40 |         offset = s_rodata.virtual_address() + s_rodata.search("This hardware does not support NvFBC");
      |                                                        ^~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:52:38: error: request for member ‘content’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   52 |         auto v_text_content = s_text.content();
      |                                      ^~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:61:38: error: request for member ‘virtual_address’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   61 |                 size_t temp = s_text.virtual_address() +
      |                                      ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_fbc.cc:67:37: error: request for member ‘virtual_address’ in ‘s_text’, which is of pointer type ‘LIEF::ELF::Section*’ (maybe you meant to use ‘->’ ?)
   67 |                     offset = s_text.virtual_address() + data - v_text_content.data();
      |                                     ^~~~~~~~~~~~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc: In function ‘void patch_linux(LIEF::ELF::Binary*)’:
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc:45:78: error: request for member ‘value’ in ‘f_nvenc_ci’, which is of pointer type ‘LIEF::Symbol*’ (maybe you meant to use ‘->’ ?)
   45 |         auto v_func_bytes = bin->get_content_from_virtual_address(f_nvenc_ci.value(), 0x260);
      |                                                                              ^~~~~
/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/src/lax_encode.cc:53:37: error: request for member ‘value’ in ‘f_nvenc_ci’, which is of pointer type ‘LIEF::Symbol*’ (maybe you meant to use ‘->’ ?)
   53 |                 offset = f_nvenc_ci.value() +
      |                                     ^~~~~
make[2]: *** [CMakeFiles/nvlax_fbc.dir/build.make:90: CMakeFiles/nvlax_fbc.dir/src/lax_fbc.cc.o] Error 1
make[2]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make[1]: *** [CMakeFiles/Makefile2:219: CMakeFiles/nvlax_fbc.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/nvlax_encode.dir/build.make:90: CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o] Error 1
make[2]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make[1]: *** [CMakeFiles/Makefile2:190: CMakeFiles/nvlax_encode.dir/all] Error 2
make[1]: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
make: *** [Makefile:136: all] Error 2
make: Leaving directory '/var/tmp/pamac-build-constbur/nvlax-git/src/nvlax/build'
==> ERROR: A failure occurred in build().
    Aborting...

Ah pamac. This must be Manjaro? I compiled it successfully like 3-4 days ago on arch using yay. Maybe Manjaro is missing something from the latest arch repos?

Nah, I installed it myself on Arco :)
I've tried with yay, paru and compiling directly from source with the patch and still get the same thing so yeah...
Will make an issue in that repo then.

@Czar102
Copy link

Czar102 commented Feb 9, 2022

I got a "slightly" different error...

[ 91%] Building CXX object CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o
/nvlax-git/src/nvlax/src/lax_encode.cc: In function 'void patch_linux(LIEF::ELF::Binary*)':
/nvlax-git/src/nvlax/src/lax_encode.cc:45:78: error: request for member 'value' in 'f_nvenc_ci', which is of pointer type 'LIEF::Symbol*' (maybe you meant to use '->' ?)
   45 |         auto v_func_bytes = bin->get_content_from_virtual_address(f_nvenc_ci.value(), 0x260);
      |                                                                              ^~~~~
/nvlax-git/src/nvlax/src/lax_encode.cc:53:37: error: request for member 'value' in 'f_nvenc_ci', which is of pointer type 'LIEF::Symbol*' (maybe you meant to use '->' ?)
   53 |                 offset = f_nvenc_ci.value() +
      |                                     ^~~~~
make[2]: *** [CMakeFiles/nvlax_encode.dir/build.make:90: CMakeFiles/nvlax_encode.dir/src/lax_encode.cc.o] Error 1
make[2]: Leaving directory '/nvlax-git/src/nvlax/build'
make[1]: *** [CMakeFiles/Makefile2:190: CMakeFiles/nvlax_encode.dir/all] Error 2
make[1]: Leaving directory '/nvlax-git/src/nvlax/build'
make: *** [Makefile:136: all] Error 2

@leillo1975
Copy link
Contributor

patch-fbc.sh works for me, but patch.sh give me the following error:
Patch for this (510.47.03) nvidia driver not found.

@LionHeartP
Copy link
Contributor Author

patch-fbc.sh works for me, but patch.sh give me the following error: Patch for this (510.47.03) nvidia driver not found.

Yes I removed nvenc patch because it uses different addresses. Fbc should work fine.

@Czar102
Copy link

Czar102 commented Feb 9, 2022

https://aur.archlinux.org/packages/nvidia-utils-nvlax

The AUR package has been updated and worked for me!

@robkorv
Copy link

robkorv commented Feb 11, 2022

3080ti on Ubuntu 20.04.3 LTS ✅ for the "patch-fbc.sh" and fbc works in obs-studio now. Tnx!

➜  nvidia-patch git:(LionHeartP/master) sudo ./patch-fbc.sh                                                                                                                                                                                                     
Detected nvidia driver version: 510.47.03
Attention! Backup not found. Copying current libnvidia-fbc.so to backup.
e58b9b7e6f4e55fc7c6e077ef534c5bd70576d92  /opt/nvidia/libnvidia-fbc-backup/libnvidia-fbc.so.510.47.03
4c8571afd264a74321d9f2ef6409f70024f2858b  /usr/lib/x86_64-linux-gnu/libnvidia-fbc.so.510.47.03
Patched!

@Kyhze
Copy link

Kyhze commented Feb 11, 2022

Any alternatives for debian users?

@jailuthra
Copy link
Collaborator

Hey all fixed in #499, please test :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.