2017-04-20 37 views
0

我有一個非常不尋常的問題。我有這個OpenTK項目(我幾個月前在一臺不同的Linux機器上工作過,當時一切正常)。當程序在Monodevelop中運行時,SDL2無法創建GL上下文,否則工作正常

我的項目編譯得很好,當我從終端自己運行可執行文件時,所有工作都完美無缺 - 窗口已創建,依此類推。

然而,當我通過點擊Run鍵(有或沒有啓用調試)從內MonoDevelop的運行完全相同的程序,將拋出一個異常,因爲以下SDL2錯誤:"Could not create GL context: BadValue (integer parameter out of range for operation)"

我已經嘗試過幾乎所有東西,從更改上下文創建參數到更改OpenTK版本,都沒有任何幫助。 OpenTK的輸出(發生SDL2錯誤之前是:

Creating GraphicsContext. 
    GraphicsMode: Index: , Color: 32 (8888), Depth: 16, Stencil: 0, Samples: 0, Accum: 0 (0000), Buffers: 2, Stereo: False 
    IWindowInfo: OpenTK.Platform.SDL2.Sdl2WindowInfo 
    GraphicsContextFlags: Default 
    Requested version: 3.2 

這些參數都是一樣的,我無論是手工還是從MonoDevelop的運行程序,所以我想我的問題是 - 怎麼可能是啓動程序之間的差異。手動並運行它在MonoDevelop中,這將導致發生這樣的錯誤?

(這是在Ubuntu 16發生與MonoDevelop中6,OpenTK 1.1(還2.0)和SDL 2.0.4)

+0

難道是你運行例如32位版本單聲道,或只是不同的版本?使您的進程停滯(睡眠,阻止調用,調試器中斷)並檢查/ proc//exe指向哪個版本。 – keltar

+0

當我剛剛運行可執行文件時,monodevelop進程正在運行「/ app/bin/mono --debug --debugger-agent = transport = dt_socket,address = xxx /path/to/executable.exe」,進程的路徑簡單地說就是「mono path/to/executable.exe」。/app/bin/mono不存在,但... – Max

回答

0

好,我更多或較少解決我的問題。在Monodevelop的網站上強烈建議,我已經安裝了flatpak,它運行在一些k可能存在SDL問題的沙盒主題。我重新安裝了Monodevelop的正常方式,現在一切正常,因爲它應該。

相關問題