Closed andersonid closed 8 months ago
@andersonid i wonder if instructions on how to build and install on Fedora would suffice like https://github.com/occ-ai/obs-backgroundremoval/blob/main/docs/BUILDING-FEDORA.md
github unfortunately don't provide a Fedora runner and i'm not sure RPMs created on Ubuntu would work...
@andersonid i wonder if instructions on how to build and install on Fedora would suffice like https://github.com/occ-ai/obs-backgroundremoval/blob/main/docs/BUILDING-FEDORA.md
github unfortunately don't provide a Fedora runner and i'm not sure RPMs created on Ubuntu would work...
Thanks, mate. I will try it out and give you a feedback.
Hi @royshil I had followed you doc recommendation, and its works like a charm on obs-backgroundremoval, but got this error trying to compile obs-localvocal while running build-linux script.
=> Configuring obs-localvocal...
Preset CMake variables:
ENABLE_FRONTEND_API:BOOL="TRUE"
ENABLE_QT:BOOL="TRUE"
-- The C compiler identification is GNU 13.2.1
-- The CXX compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Threads: TRUE
-- Performing Test HAVE_STDATOMIC
-- Performing Test HAVE_STDATOMIC - Success
-- Qt version found: 6
-- Found OpenGL: /usr/lib64/libOpenGL.so
-- Found WrapOpenGL: TRUE
-- Found XKB: /usr/lib64/libxkbcommon.so (found suitable version "1.5.0", minimum required is "0.5.0")
-- Found WrapVulkanHeaders: /usr/include
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.13")
-- Found OpenSSL: /usr/lib64/libcrypto.so (found version "3.0.9")
-- Configuring done (2.1s)
-- Generating done (0.0s)
-- Build files have been written to: /home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64
=> Building obs-localvocal...
[4/19] Performing download step (git clone) for 'Whispercpp_Build'
Cloning into 'Whispercpp_Build'...
HEAD is now at f96e1c5 sync : ggml (backend v2, k-quants, CUDA opts, Metal opts, etc.) (#1422)
Submodule 'bindings/ios' (https://github.com/ggerganov/whisper.spm) registered for path 'bindings/ios'
Cloning into '/home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/src/Whispercpp_Build/bindings/ios'...
Submodule path 'bindings/ios': checked out '44b39fd4ec616a9ce66635e36045372d03dd45e0'
[7/19] Performing configure step for 'Whispercpp_Build'
-- The C compiler identification is GNU 13.2.1
-- The CXX compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Git: /usr/bin/git (found version "2.41.0")
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- CMAKE_SYSTEM_PROCESSOR: x86_64
-- x86 detected
-- Configuring done (0.3s)
-- Generating done (0.0s)
-- Build files have been written to: /home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/src/Whispercpp_Build-build
[8/19] Performing build step for 'Whispercpp_Build'
[1/6] Building C object CMakeFiles/whisper.dir/ggml-alloc.c.o
[2/6] Building C object CMakeFiles/whisper.dir/ggml-backend.c.o
[3/6] Building C object CMakeFiles/whisper.dir/ggml-quants.c.o
[4/6] Building C object CMakeFiles/whisper.dir/ggml.c.o
[5/6] Building CXX object CMakeFiles/whisper.dir/whisper.cpp.o
/home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/src/Whispercpp_Build/whisper.cpp: In function ‘whisper_full_params whisper_full_default_params(whisper_sampling_strategy)’:
/home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/src/Whispercpp_Build/whisper.cpp:3779:5: warning: missing initializer for member ‘whisper_full_params::logits_filter_callback’ [-Wmissing-field-initializers]
3779 | };
| ^
/home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/src/Whispercpp_Build/whisper.cpp:3779:5: warning: missing initializer for member ‘whisper_full_params::logits_filter_callback_user_data’ [-Wmissing-field-initializers]
/home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/src/Whispercpp_Build/whisper.cpp: At global scope:
/home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/src/Whispercpp_Build/whisper.cpp:161:29: warning: ‘ggml_tensor* ggml_mul_mat_pad(ggml_context*, ggml_tensor*, ggml_tensor*, int)’ defined but not used [-Wunused-function]
161 | static struct ggml_tensor * ggml_mul_mat_pad(struct ggml_context * ctx, struct ggml_tensor * x, struct ggml_tensor * y, int pad = 32) {
| ^~~~~~~~~~~~~~~~
[6/6] Linking CXX static library libwhisper.a
[9/19] Performing install step for 'Whispercpp_Build'
-- Installing: /home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/lib/static/libwhisper.a
-- Installing: /home/anobre/Downloads/obs-plugins/obs-localvocal/build_x86_64/Whispercpp_Build-prefix/include/whisper.h
[19/19] Linking CXX shared module obs-localvocal.so
FAILED: obs-localvocal.so
: && /usr/bin/c++ -fPIC -O2 -g -DNDEBUG -shared -o obs-localvocal.so CMakeFiles/obs-localvocal.dir/obs-localvocal_autogen/mocs_compilation.cpp.o CMakeFiles/obs-localvocal.dir/src/plugin-main.c.o CMakeFiles/obs-localvocal.dir/src/transcription-filter.cpp.o CMakeFiles/obs-localvocal.dir/src/transcription-filter.c.o CMakeFiles/obs-localvocal.dir/src/whisper-processing.cpp.o CMakeFiles/obs-localvocal.dir/src/model-utils/model-downloader.cpp.o CMakeFiles/obs-localvocal.dir/src/model-utils/model-downloader-ui.cpp.o /usr/lib64/libobs-frontend-api.so.29 _deps/libcurl_fetch-src/lib/libcurl.a libplugin-support.a /usr/lib64/libobs.so.29 /usr/lib64/libQt6Widgets.so.6.5.2 /usr/lib64/libQt6Gui.so.6.5.2 /usr/lib64/libGLX.so /usr/lib64/libOpenGL.so /usr/lib64/libQt6Core.so.6.5.2 /usr/lib64/libssl.so /usr/lib64/libcrypto.so /usr/lib64/libz.so Whispercpp_Build-prefix/lib/static/libwhisper.a && :
/usr/bin/ld: libplugin-support.a(plugin-support.c.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
@andersonid the error suggests that libplugin-support.a
wasn't built with -fPIC
i've merged a change to add -fPIC on linux
can you git pull master and try the build again?
@andersonid are you getting any luck building for fedora?
@andersonid are you getting any luck building for fedora?
Thank you so much, mate! It's now installed and visually working on my filters dialog for audio inputs... Now I will try to get the entire solution working with your youtube tutorial.
Thank you again for sharing this awesome work!!!!
Thank you so much for all your effort and sharing your awesome work, royshilkrot! Could you please add a RPM package version to install localvocal on Fedora/RHEL?
Thanks!