Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > VapourSynth

Reply
 
Thread Tools Search this Thread Display Modes
Old 11th April 2022, 20:16   #1  |  Link
Couleur
Registered User
 
Couleur's Avatar
 
Join Date: Jan 2022
Location: France
Posts: 21
Compiling a plugin for Linux

Hey, this is one of the only places I've thought of to ask for help about this, I've been trying to compile this:

https://github.com/f0e/vs-frameblender

This is a modified version of AverageFrames which allows for 128 weights (instead of 31), the owner has gone inactive and only ever released DLLs. I've tried using g++ and Visual Studio Code with that weird Linux WSL port, but nothing worked, some guy told me there might be a way using the .vcxproj, but I'm no cpp expert, I'd really appreciate having some experienced eyes take a look at these solutions/this project!

PS: While using it on Windows I notice this is much slower at averaging frames on newer versions of VapourSynth, anything newer than R54 is awfully slow for a reason I ignore, let me know if you find the reason why

Edit: My G++ version is 11.2.0

Last edited by Couleur; 11th April 2022 at 20:48. Reason: Additional context
Couleur is offline   Reply With Quote
Old 11th April 2022, 20:42   #2  |  Link
cretindesalpes
͡҉҉ ̵̡̢̛̗̘̙̜̝̞̟̠͇̊̋̌̍̎̏̿̿
 
cretindesalpes's Avatar
 
Join Date: Feb 2009
Location: No support in PM
Posts: 712
You can compile the plug-in this way from the command line:
Code:
g++ -shared -std=c++17 -O3 -Ivs-frameblender/vapoursynth vs-frameblender/main.cpp
You’ll probably have to rename the output file, but I’m not sure about the naming convention on vapoursynth/linux. Maybe linux gurus here could give you a better answer.
__________________
dither 1.28.1 for AviSynth | avstp 1.0.4 for AviSynth development | fmtconv r30 for Vapoursynth & Avs+ | trimx264opt segmented encoding
cretindesalpes is offline   Reply With Quote
Old 11th April 2022, 20:48   #3  |  Link
Couleur
Registered User
 
Couleur's Avatar
 
Join Date: Jan 2022
Location: France
Posts: 21
This command gives me the following error:

Quote:
/usr/sbin/ld: /tmp/cc9yaWV7.o: warning: relocation against `_ZTISt13runtime_error@@GLIBCXX_3.4' in read-only section `.text.unlikely'
/usr/sbin/ld: /tmp/cc9yaWV7.o: relocation R_X86_64_PC32 against symbol `_ZTISt13runtime_error@@GLIBCXX_3.4' can not be used when making a shared object; recompile with -fPIC
/usr/sbin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
Adding -fPIC gives me a.out, not sure what to do with this though

PS: Tried to compile a.out to a .so and got the following error (if that even matters):

Quote:
/usr/sbin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../lib/Scrt1.o: in function `_start':
(.text+0x1b): undefined reference to `main'
collect2: error: ld returned 1 exit status
Update: that command makes it compiles just fine on Windows, it might be directly related to the plugin then.. ��

Last edited by Couleur; 11th April 2022 at 20:55.
Couleur is offline   Reply With Quote
Old 13th April 2022, 14:05   #4  |  Link
Couleur
Registered User
 
Couleur's Avatar
 
Join Date: Jan 2022
Location: France
Posts: 21
update: using clang++ instead of g++ worked out
Couleur is offline   Reply With Quote
Reply

Tags
compiling, linux

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 18:34.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.