[Nix-dev] Help packaging BLAST?

Jeffrey David Johnson jefdaj at gmail.com
Wed Feb 25 06:30:13 CET 2015


Hi! The existing BLAST package (https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/science/biology/ncbi-tools/default.nix) isn't working for me. Probably because it's broken on x64. So I'm trying to package the standalone executables from http://www.ncbi.nlm.nih.gov/books/NBK52640/ instead. I've created a package (https://github.com/jefdaj/nixpkgs/blob/master/pkgs/applications/science/biology/ncbi-blast/default.nix) but can't run the resulting programs. They all say something like:

$ blastn
bash: /run/current-system/sw/bin/blastn: No such file or directory

Based on https://www.biostars.org/p/12298/ I think I have the right architecture:

$ uname -a
Linux acro 3.14.29 #1-NixOS SMP Thu Jan 1 00:00:01 UTC 1970 x86_64 GNU/Linux

$ file blastn
blastn: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

The "dynamically linked" part worries me though. Do I need to add build inputs referencing a specific gcc or something? Also including the suggested readelf command for completeness:

$ readelf -a blastn | head -n20
ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF64
  Data:                              2's complement, little endian
  Ident Version:                     1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           AMD x86-64
  Version:                           1 (current)
  Entry point address:               0xc95f20
  Start of program headers:          64 (bytes into file)
  Start of section headers:          32499288 (bytes into file)
  Flags:                             
  Size of this header:               64 (bytes)
  Size of program header entries:    56 (bytes)
  Number of program headers entries: 9
  Size of section header entries:    64 (bytes)
  Number of section headers entries: 32
  Section header string table index: 31

If this is a dead end, I could also try porting the Debian package right? How hard is that?
Thanks
Jeff


More information about the nix-dev mailing list