Arch:Mono 在 DllImport 期間隨機掛起

Arch:Mono 在 DllImport 期間隨機掛起

跑步時任何單聲道應用程式,應用程式在啟動期間掛起,然後必須終止。 Pinta 給予一個空白窗口,而 Monodevelop 不執行任何操作。但是,沒有列印任何錯誤訊息,這沒有提供太多線索。我已經安裝了所有依賴項,常規 Gtk+ 應用程式正常運作(firefox、leafpad 等)

我正在使用 Mono 3.2.3、Arch Linux 和 Openbox

我已經重新安裝了 Mono,然後又重新安裝了 Arch,但沒有效果。

單聲道版本:

Mono JIT compiler version 3.2.3 (tarball Sun Sep 22 20:38:43 UTC 2013)
Copyright (C) 2002-2012 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       altstack
    Notifications: epoll
    Architecture:  amd64
    Disabled:      none
    Misc:          softdebug 
    LLVM:          supported, not enabled.
    GC:            sgen

MONO_DEBUG_LEVEL=調試 pinta(最後 4 行)

Mono: DllImport searching in: 'libcairo.so.2' ('libcairo.so.2').
Mono: Searching for 'cairo_set_source_surface'.
Mono: Probing 'cairo_set_source_surface'.
Mono: Found as 'cairo_set_source_surface'.

MONO_DEBUG_LEVEL=調試 monodevelop (最後 4 行)

Mono: DllImport searching in: 'libMonoPosixHelper.so' ('libMonoPosixHelper.so').
Mono: Searching for 'Mono_Posix_Stdlib_stdin'.
Mono: Probing 'Mono_Posix_Stdlib_stdin'.
Mono: Found as 'Mono_Posix

使用 monodevelop,它會在列印一行的中間停止。

答案1

失敗是由 nvidia 專有驅動程式引起的(在 Debian bug #728743 中顯示)

降級到 325.15 可以解決此問題

如何降級

  1. 卸載所有 nvidia 軟體包並刪除 /etc/X11/xorg.conf
  2. 下載http://us.download.nvidia.com/XFree86/Linux-x86_64/325.15/NVIDIA-Linux-x86_64-325.15.run
  3. 節省這個補丁文件作為 nvpatch.patch
  4. 使NVIDIA-Linux-x86_64-325.15.run可執行
  5. 出現提示時運行./NVIDIA-Linux-x86_64-325.15.run --apply-patch nvpatch.patch並填寫檔案名稱。這將創建一個名為的文件NVIDIA-Linux-x86_64-325.15-custom.run,其中包含在 Linux 核心版本 3.11 上編譯的驅動程式版本
  6. 確保沒有正在運行的 X 伺服器實例,否則驅動程式將無法安裝
  7. 執行驅動程式安裝,必要時安裝 32 位元相容性
  8. 運行nvidia-xconfig以建立您的 X 配置檔案(如果沒有它,專有驅動程式將無法載入)。
  9. 運行echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-nouveau.conf將 nouveau 驅動程式列入黑名單。如果沒有列入黑名單,nvidia驅動程式將無法加載

相關內容