Mrview can't run after install

I installed mrtrix3 on a computer running Windows 7 Professional 64 bit. Specs are

AMD Radeon R5 340X, 2GB (DP, S L-DVI-I)
Intel Core i7-6700 (QC/8MB/8T/ 3.4GHz/65W); supports Windows 7/8.1/10/Linux
8GB (2x4G) 2133MHz DDR4 Memory
500 GB hard drive.

After installing the mingw64 mysys2 program according to the instructions:

http://mrtrix.readthedocs.io/en/latest/installation/windows_install.html

even the part where it says to close the terminal after running pacman -Syuu. Got to the end where it says to run ./set_path to set the bin directory for minGW-w64. When I run mrview I get this error.

[SYSTEM FATAL CODE: SIGSEGV (11)] Segmentation fault: Invalid memory access.

And a warning message about not being able to determine OpenGL configuration. The graphics card does support this up to version 4.4

So what gives? I knew I was in for a bad time I saw there were two different Wikis to install this program.

mrview: [WARNING] unable to determine OpenGL version - operation may be unstable if actual version is less than 3.3

That’s the warning message before the segmentation fault error.

Hi @vuhv,

When I run mrview I get this error.

Can you confirm that non-GUI applications run fine, i.e. it is only mrview that fails to run?

And a warning message about not being able to determine OpenGL configuration.

It’s not impossible for mrview to run despite encountering this warning. However it does raise concerns regarding the state of the installed drivers. AMD have a long history of driver issues that they’ve never really been able to shake, and I’m not personally aware of anybody who has installed MRtrix3 on a Windows system with a Radeon card (though there’s been issues with them on Linux in the past).

You could try running mrview with the -debug option, and see if that provides us with any more information. If that doesn’t tell us enough, you could try running it through a debugger; particularly if it is indeed a genuine segmentation fault, that should give us some information regarding where the fault is coming from.

I knew I was in for a bad time I saw there were two different Wikis to install this program.

Which is the second set of instructions you are referring to? The old GitHub wiki was erased when we moved to Read The Docs; I’m not aware of any other installation instructions that are provided by MRtrix3 developers.

Rob

Hi rsmith,

I will get back to you with details after running the debug option. My last comment was just made after a long day I didn’t mean anything by it. I understand this is non-commercial software so I can’t expect fancy wizards for installation. I’m glad to find an active support forum.

[code]aavuhv@MH02053538DT MINGW64 ~
$ mrview -debug
mrview: [DEBUG] No config file found at "/etc/mrtrix.conf"
mrview: [DEBUG] No config file found at ".mrtrix.conf"
mrview: [INFO] GL renderer: GDI Generic
mrview: [INFO] GL version: 1.1.0
mrview: [INFO] GL vendor: Microsoft Corporation
mrview: [WARNING] unable to determine OpenGL version - operation may be unstable if actual version is less than 3.3
mrview: [DEBUG] loading font into OpenGL texture…

mrview: [SYSTEM FATAL CODE: SIGSEGV (11)] Segmentation fault: Invalid memory access

aavuhv@MH02053538DT MINGW64 ~
$

aavuhv@MH02053538DT MINGW64 ~
[/code]

Looking at this error I’m going to try and update the graphics card drivers. I certainly hope this works on an AMD card because this is the only computer the user has.

I have an update after another day of working with this. mrview works but only if I log onto the computer. If I connect to the computer using remote desktop, I get the segmentation error.

I updated the graphics card drivers to version 22.19.162.4 dated 4/27/17 using the minimal setup download. I even tried setting the remote desktop quality to 32-bit color and I got the same error. Does mrtrix3 not support remote desktop?

Does mrtrix3 not support remote desktop?

There are certainly issues with X11 forwarding not supporting OpenGL 3.3 (see details in documentation here), so it would not surprise me at all if Windows remote desktop is also unable to support these features. But I honestly suspect you’d be the first person to even try this with MRtrix3 on Windows.

It may be a limitation of the Radeon drivers; e.g. it appears as though NVidia’s “professional” GPUs (i.e. Quadro) have OpenGL support over remote desktop, but their “gaming” card drivers do not. So for AMD to not have support for this would not be surprising. Unfortunately there’s not anything we can do about this from our end, other than suggest trying mechanisms other than RDC for remote connection if this is something you absolutely need to be able to do.

I’m not familiar with how this application functions but is there anything off the top of your head I can run to verify the application runs? I tried to use mrcalc like it was a regular calculator and by attemting to add two numbers together.

You can in fact use mrcalc that way; the trick is that it’s stack-based:

$ mrcalc 1 1 -add
2

Alternatively, running pretty any command other than mrview, without any command-line arguments, should open the help page of the command, which verifies that the binary is successfully being executed.

Not sure how far you’ve got with this, but just in case:

Well, mrview clearly works, since you can use it when logged in locally. So the issue is purely down to OpenGL not being supported over a remote desktop connection.

This is not a limitation of MRtrix3 per se - we make use of Qt5 and OpenGL 3.3, both of which are industry-standard and well supported. However, this does rely on the operating system providing access to the capabilities of the graphics card, and here the issue is that Microsoft’s RDC protocol does not provide any guarantees on that front - Microsoft leaves it up to the graphics card manufacturer to provide support for this in their drivers.

This will apply to any application that relies on OpenGL - MRtrix or otherwise. There’s plenty of information on that if you search for ‘OpenGL RDC’ (e.g. this forum post). But as @rsmith hints at, this is not something that we can provide support for…

However, if you can access the data that you’re trying to view over e.g. a network share, then there’s nothing stopping you from viewing these data using a local installation of mrview - this is how I typically get around the problem, and is also one of the suggestions in the documentation.

I’m familiar the free version of VNC viewer. It’s not my favorite application as a solution but thankfully I’m not the one using MRtrix3. Thank you for the help I think we’ve found a solution.