Msconvert Wine

From SPCTools

Revision as of 21:49, 16 June 2011; view current revision
←Older revision | Newer revision→
Jump to: navigation, search

Proteowizard's msconvert utility is a must have tool for converting MS/MS data from almost any proprietary MS/MS data format into open standards formats (primary mzML and mzXML). While this tool runs on both Windows and Linux, the ability to convert many common formats under Linux is unavailable due to the need to have vendor specific libraries (dlls) installed. Fortunately it is possible to run the Windows version of msconvert under Linux using Wine, a open source compatibility layer for Windows -- though your mileage may vary.

The following are instructions on how to install and setup Wine under a variety of Linux platforms. These instructions where largely derived from several spctools-discuss emails and a large thanks goes out to the users who posted them (see references below).

Contents

Requirements

  • You will need to use wine in 32bit emulation mode (basically a 32bit wine even if you are on a 64bit architecture). This is because .Net and Visual Studio libraries are required and these libraries are installed using a 32bit installer, even for the 64 bit versions of these libraries.

Instructions for Ubuntu

The following instructions where tested using ProteoWizard 2.1.2785 on a Ubuntu 11.10 'natty' Amazon Machine Image running Wine 1.2.2 (See http://cloud.ubuntu.com/ami/ for more AMI options).

middle
Please read the notes regarding potential issues following these instructions before executing.
  1. Connect to the system you want to install on. If using ssh use the -X option to ensure display forwarding is set since parts of the setup will prompt you with GUI dialogs asking you to accept licenses.
    ssh -X root@system
  2. Update/install rpms
    sudo apt-get update
    sudo apt-get -y install wine cabextract
  3. Use winetricks to install required Windows resources
    wget http://www.kegel.com/wine/winetricks
    chmod 755 winetricks
    ./winetricks winxp
    ./winetricks vcrun2008
    ./winetricks dotnet35  Will install .Net 2.0 followed by 3.0 then 3.5
  4. Download and install Proteowizard
    Go to http://proteowizard.sourceforge.net/ using a web browser. Click on the downloads link and select the Windows with vendor support option (not the 64 bit version as the required vendor libraries aren't 64 bit). Download the file with the tar.bz2 extension. Extract the package and move it to wherever you want to install it:
    mkdir pwiz; tar xvf pwiz*.tar.bz2 -C pwiz

Issues/Problems

  • If you are trying to install on an Amazon EC2 instance winetricks may fail when trying to download and install .Net 3.0 from Microsoft. From what I can tell Microsoft is blocking access from the Amazon Cloud. Just manually download the file from a different system (look for the wget command) and copy it to the EC2 instance.
  • If during the installation of .Net 3.0 it seems to hang, look in your "system tray" for the installer icon. This will be the final finish dialog that will need to be clicked through to end the installation.
  • Lastly should be aware that using .Net 3.5 under wine is still experimental at this time and ProteoWizard elements that make use of this may not work correctly.

Instructions for CentOS

The following instructions where tested using ProteoWizard 2.1.2785 on a CentOS 5.5 Amazon Machine Image (ami-68f80f01). CentOS presents a bigger challenge, as you'll need the latest version of Wine and at the time these instructions where written none of the CentOS repositories contained pre-built rpms for it.

  1. Upgrade your system if it hasn't already been
    rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
    rpm -Uvh http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
    yum -y update
  2. Install necessary packages for building and running wine
    yum -y install xauth cabextract fontconfig gcc44 rpm-build
    wget ftp://ftp.pbone.net/mirror/ftp.sourceforge.net/pub/sourceforge/h/project/hp/hphp/CentOS%205%2064bit/RPM/flex-2.5.35-7.x86_64.rpm
    rpm -Uvh flex*
  3. Log out, then log back in and build wine (using -X)
    CC=/usr/bin/gcc44
    wget http://download.hostedgameservers.com/install-wine1.2.2.sh
    chmod 777 install-wine1.2.2.sh
    ./install-wine1.2.2.sh


rpmbuild --define "_without_gstreamer 0" --nodeps
vi install-wine1.2.2.sh # remove the download, configure and make commands
rpm --nomd5 -ivh http://apt.sw.be/redhat/el5/en/source/wine-1.3.7-1.rft.src.rpm
ProteinProphet
MassLynx
./winetricks mfc42
wine regsvr32 DACServer.dll

How can I install applications to be shared by multiple users?

Wine does not currently allow sharing its configuration ("prefixes") between users, due to the risk of registry corruption from running multiple wineservers simultaneously (bug #11112). At present, applications must be installed separately for each user.

However, you can copy Wine prefixes; you can install everything to one prefix, then make a copy of it in each user's home directory. This saves having to run the same installation instructions for each user.

More information about wine's "windows" partition and NFS:

http://www.winehq.org/pipermail/wine-users/2010-July/076137.html

References

http://groups.google.com/group/spctools-discuss/browse_thread/thread/604745729ac0e541
http://groups.google.com/group/spctools-discuss/browse_thread/thread/bb2a608ad31f77dd/868fab027488bd09?hl=en&lnk=gst&q=wine#868fab027488bd09
http://groups.google.com/group/spctools-discuss/browse_thread/thread/2d98145b42479cb0/f8d80a25d1f8583c?hl=en&lnk=gst&q=wine#f8d80a25d1f8583c
Personal tools