неопределенный символ: PaAlsa_EnableRealtimeScheduling предотвращает открытие приложения mixx
На этой машине у нас Ubuntu 20.04 (я полагаю). После нескольких аппаратных конфигураций (несколько кабелей) (я действительно не знаю, что объяснять) программное обеспечение mixxx не открывается.
Итак, он отображается на панели действий, но затем не открывается.
Я попытался убить процесс командой killall.
Я попытался перезапустить машину.
Я попытался переустановить программное обеспечение Mixxx из центра программного обеспечения Ubuntu и из консоли с помощью команды apt-get.
Любой совет будет полезен.
Сейчас у меня нет физического доступа к машине, но я могу управлять ею из дома с помощью программного обеспечения AnyDesk.
(PS: я почти не знаком с программным обеспечением Ubuntu, поэтому, пожалуйста, дайте поясняющие ответы:))
Редактировать:
epalxeis@epalxeis-для-заполнения-OEM:~$ mixxx mixxx: ошибка поиска символа: mixxx: неопределенный символ: PaAlsa_EnableRealtimeScheduling epalxeis@epalxeis-для-заполнения-OEM:~$
Пробовал установить из исходников (ссылка ). Та же ошибка.
epalxeis@epalxeis-для-заполнения-OEM:~/Desktop/mixxx-2.3/build$ cmake --build . Сканирование зависимостей целевого теста [ 0%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/benchmark.cc.o [ 0%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/benchmark_api_internal.cc.o [ 0%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/benchmark_name.cc.o [ 0%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/benchmark_register.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/benchmark_runner.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/colorprint.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/commandlineflags.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/complexity.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/console_reporter.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/counter.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/csv_reporter.cc.o [ 1%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/json_reporter.cc.o [ 2%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/reporter.cc.o [ 2%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/sleep.cc.o [ 2%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/statistics.cc.o [ 2%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/string_util.cc.o [ 2%] Сборка объекта CXX lib/benchmark/src/CMakeFiles/benchmark.dir/sysinfo.cc.o ... ... ... [ 99%] Связывание исполняемого файла CXX mixxx-test /usr/bin/ld: libmixxx-lib.a(sounddeviceportaudio.cpp.o): в функции `SoundDevicePortAudio::open(bool, int)': /home/epalxeis/Desktop/mixxx-2.3/src/soundio/sounddeviceportaudio.cpp:340: неопределенная ссылка на «PaAlsa_EnableRealtimeScheduling» collect2: ошибка: ld вернул 1 статус выхода make[2]: *** [CMakeFiles/mixxx-test.dir/build.make:1659: mixxx-test] Ошибка 1 make[1]: *** [CMakeFiles/Makefile2:1155: CMakeFiles/mixxx-test.dir/all] Ошибка 2 make: *** [Makefile:163: all] Ошибка 2
1 ответ
У меня есть только комментарий (//) строки 339 и 340 файла
/home/epalxeis/Desktop/mixxx-2.3/src/soundio/sounddeviceportaudio.cpp
изменить это:
#ifdef __LINUX__
if (m_deviceTypeId == paALSA) {
qInfo() << "Enabling ALSA real-time scheduling";
PaAlsa_EnableRealtimeScheduling(pStream, 1);
}
#endif
к этому:
#ifdef __LINUX__
if (m_deviceTypeId == paALSA) {
// qInfo() << "Enabling ALSA real-time scheduling";
// PaAlsa_EnableRealtimeScheduling(pStream, 1);
}
#endif
а потом я побежал:
sudo cmake --build build --target install --parallel `nproc`
и теперь mixxx открывается.
Я не знаю, какие побочные эффекты может вызвать эта пользовательская установка, поэтому не стесняйтесь комментировать.