簡體   English   中英

錯誤:“SDL 無法初始化:SDL_Error:dsp:沒有這樣的音頻設備”

[英]Error : "SDL could not initialize! SDL_Error: dsp: No such audio device"

我目前正在從事個人項目,但遇到 SDL_mixer 或 Audio 方面的問題

我可以毫無問題地進行編譯,但是當我嘗試執行該程序時出現此錯誤:

“SDL 無法初始化:SDL_Error:dsp:沒有這樣的音頻設備”

終端截圖

我正在使用 cmake 進行編譯,這是我的 CMakeList.txt:

cmake_minimum_required(VERSION 3.0)

set(CMAKE_BUILD_TYPE Debug)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")

project(R-TYPE)

find_package(SDL2 REQUIRED)
find_package(SDL2_image REQUIRED)
find_package(SDL2_ttf REQUIRED)
find_package(SDL2_mixer REQUIRED)

include_directories(${SDL2_INCLUDE_DIRS} ${SDL2_IMAGE_INCLUDE_DIRS} ${SDL2_TTF_INCLUDE_DIRS} ${SDL2_MIXER_INCLUDE_DIRS})

add_executable(
    R-TYPE
    main.cpp
    Render/renderWindow.cpp
    Menu/menu.cpp
)
target_link_libraries(R-TYPE ${SDL2_LIBRARIES} ${SDL2_IMAGE_LIBRARIES} ${SDL2_TTF_LIBRARIES} ${SDL2_MIXER_LIBRARIES})

這是我從中得到錯誤的 function:

int main(int argc, char* args[])
{
    if (SDL_Init(SDL_INIT_EVERYTHING) < 0) 
    {
        std::cout << "SDL could not initialize! SDL_Error: " << SDL_GetError() << std::endl;
        return 84;
    }
    RenderWindow window("R-TYPE", 1920, 1080);

    while (gameRunning)
    {
        game(window);
    }
    window.cleanUp();
    SDL_Quit();
    TTF_Quit();
    return 0;
}

我在 UBUNTU,我該如何解決這個問題?

我已經嘗試安裝 libasound2-dev libpulse-dev 但沒有成功

這是由手動構建 SDL2 和/或 SDL2_mixer(未安裝所有必需的依賴項)引起的。

apt安裝它們可以解決問題。 自建版本必須從/usr/local中清除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM