Unconfigured Ad

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Ash
    Member
    • Jun 2010
    • 15

    #1

    Adventures with installing blat on Mac OS X

    Hi all,

    I have a number of reads (10000) that I need to blat against the human genome. So I decided installing standalone blat on my Mac Pro 4,1 would be the way forward. I first downloaded the ready compiled executable for Mac-i386. Seemed to be extremely hassle free and working until I tried telling it to use the .fa version of the human genome that is 3.16 GB, as the database. Then I got an error msg saying it was out of memory while it was trying to hold the entire genome in memory... Arse!

    So after a bit of searching I came across a few posts in various places pointing out that the ready downloadable blat was 32 bit and capped at using only 4GB of RAM, regardless of the amount of RAM your machine already has, and that the way forward was to compile from source code which was remarkably similar to linux. How bad could it be I thought?

    I went to http://users.soe.ucsc.edu/~kent/src/ and downloaded blatSrc.zip
    I've had a number of errors which I managed to solve:

    1) First problem seemed to be with a load of png libraries... as out lined here

    That one wasn't too bad. Quick search for libpng-devel leads you to a downloadable solution.

    2) Next problem appeared to be with the $MACHTYPE. The error msg I was receiving said:
    make[1]: *** No rule to make target `../lib//jkweb.a', needed by `blat'.
    Stop.
    make: *** [all] Error 2
    I found the answer to that one here

    and managed to rename my machtype from x86_64-apple-darwin to x86_64 with a little help from a linux colleague

    3) So finally, I'm in the blatSrc folder and I type 'make'... waiting with baited breath for the next error message. And there didn't appear to be any! But my next problem is that the output I got indicated that for some reason, it doesn't appear to have put all the executables in the same place (see below).

    lb-mac:blatSrc Ash$ make
    cd lib && make
    make[1]: `x86_64/jkweb.a' is up to date.
    cd jkOwnLib && make
    make[1]: `../lib/x86_64/jkOwnLib.a' is up to date.
    cd blat && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/blat blat.o ../lib/x86_64/jkOwnLib.a ../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    strip /Users/Ash/bin/x86_64/blat
    cd gfClient && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/gfClient gfClient.o ../lib/x86_64/jkOwnLib.a ../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    strip /Users/Ash/bin/x86_64/gfClient
    cd gfServer && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/gfServer gfServer.o ../lib/x86_64/jkOwnLib.a ../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    strip /Users/Ash/bin/x86_64/gfServer
    cd hg/pslPretty && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/pslPretty pslPretty.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    cd hg/pslReps && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/pslReps pslReps.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    cd hg/pslSort && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/pslSort pslSort.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    cd utils/nibFrag && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/nibFrag nibFrag.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng
    strip /Users/Ash/bin/x86_64/nibFrag
    cd utils/faToNib && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/faToNib faToNib.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    strip /Users/Ash/bin/x86_64/faToNib
    cd utils/faToTwoBit && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/faToTwoBit faToTwoBit.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    strip /Users/Ash/bin/x86_64/faToTwoBit
    cd utils/twoBitToFa && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/twoBitToFa twoBitToFa.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    strip /Users/Ash/bin/x86_64/twoBitToFa
    cd utils/twoBitInfo && make
    gcc -O -g -Wall -Wno-unused-variable -o /Users/Ash/bin/x86_64/twoBitInfo twoBitInfo.o ../../lib/x86_64/jkweb.a -pthread -lssl -lcrypto -lpng -lm
    strip /Users/Ash/bin/x86_64/twoBitInfo
    cd webBlat && make
    make[1]: `webBlat' is up to date.

    I could understand if it had put all the executables in one place - perhaps I had screwed up creating the bin file in the wrong place or something. But the fact that some appear to be in the directory I was in and others appear to have been deposited elsewhere (bin) is really confusing me! Does anyone know why? Have I done something wrong? Incidentally, it certainly appears to have created a 64 bit version of blat.

    Apologies for the rambling post - I hope this proves useful to anyone else trying to install standalone blat on a Mac, and would be extremely grateful if someone could enlighten me to whether I've totally screwed up or not!

    Cheers,

    A
  • JackieBadger
    Senior Member
    • Mar 2009
    • 385

    #2
    Although seemingly useful, BLAT is a total hassle with poor instructions. I had the same issue of memory capping out on my Mac. I gave up on BLAT.
    I would be interested to see if any experienced BLAT users could produce an idiots/foolproof guide to running this program

    Comment

    Latest Articles

    Collapse

    • SEQadmin2
      Beyond CRISPR/Cas9: Understand, Choose, and Use the Right Genome Editing Tool
      by SEQadmin2



      CRISPR/Cas9 sparked the gene editing revolution for both research and therapeutics.1 But this system still showed severe issues that limited its applications. The most prominent were the heavy reliance on PAM sequences, delivery limitations, double-stranded breaks that prompt unintended edits and cell death, and editing inefficiency (both in targeting and in knock-in reliability).

      Despite this, “CRISPR helped turn genome editing from a specialized technique into
      ...
      07-31-2026, 11:01 AM
    • SEQadmin2
      Proteomic Platforms: How to Choose the Right Analytical Strategy to Improve Detection and Clinical Applications
      by SEQadmin2


      Proteomics platforms are evolving rapidly, with advances in mass spectrometry and affinity-based approaches expanding what researchers can detect and at what scale. As the field moves toward deeper proteome coverage and clinical applications, scientists face an increasingly complex landscape of tools. This article will explore how researchers are navigating these choices to find the right platform for their work.

      The systematic characterization of the human proteome has
      ...
      07-20-2026, 11:48 AM

    ad_right_rmr

    Collapse

    News

    Collapse

    Topics Statistics Last Post
    Started by SEQadmin2, Today, 10:35 AM
    0 responses
    4 views
    0 reactions
    Last Post SEQadmin2  
    Started by SEQadmin2, 08-06-2026, 07:41 AM
    0 responses
    23 views
    0 reactions
    Last Post SEQadmin2  
    Started by SEQadmin2, 08-03-2026, 10:13 AM
    0 responses
    41 views
    0 reactions
    Last Post SEQadmin2  
    Started by SEQadmin2, 07-31-2026, 02:55 AM
    0 responses
    47 views
    0 reactions
    Last Post SEQadmin2  
    Working...