void-linux / void-linux/void-packages
vosk-api not linked with openmp despite using its symbols (undefined symbol: omp_get_num_places)
Nobody has claimed this yet.
- Dominant language
- Shell
- Stars
- 3.4k
- Forks
- 2.8k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 299
Description
Is this a new report?
Yes
System Info
Void 6.12.58_1 x86_64 GenuineIntel uptodate rr
Package(s) Affected
vosk-api-0.3.45_1
Does a report exist for this bug with the project's home (upstream) and/or another distro?
https://github.com/alphacep/vosk-api/issues/1480 - not sure if it's exactly this, but seems related.
Expected behaviour
When trying to load libvosk.so into my luajit ffi wrapper program, it loads. When running ldd /usr/lib/libvosk.so, openmp is listed.
Actual behaviour
When trying to load libvosk.so into my luajit ffi wrapper, the following error is printed:
luajit: symbol lookup error: /usr/lib/libvosk.so: undefined symbol: omp_get_num_places
When running ldd /usr/lib/libvosk.so, the following is printed:
ldd: warning: you do not have execution permission for `/usr/lib/libvosk.so'
linux-vdso.so.1 (0x00007fca535f3000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fca51800000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007fca51b75000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007fca51b48000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007fca51616000)
/usr/lib64/ld-linux-x86-64.so.2 (0x00007fca535f5000)
Steps to reproduce
- Write file
vosk.lua:
local ffi = require("ffi")
ffi.load("vosk")
- run
luajit vosk.lua - error :<
luajit: symbol lookup error: /usr/lib/libvosk.so: undefined symbol: omp_get_num_places
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with vosk.lua and reproduce the ffi.load("vosk") failure using luajit, then compare it with ldd /usr/lib/libvosk.so. Inspect how the vosk-api package produces libvosk.so and verify that the resulting library declares the OpenMP dependency; done means the symbol resolves when the reproduction is run.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100