首先下载bowtie2的源码

https://sourceforge.net/projects/bowtie-bio/files/bowtie2

选择source文件。

将下载好的源码解压

执行(centos6.5需要自行升级g++的版本)

g++ -O3 -m64 -msse2  -funroll-loops -g3 -DCOMPILER_OPTIONS="\"-O3 -m64 -msse2  -funroll-loops -g3 -DPOPCNT_CAPABILITY\"" -DPOPCNT_CAPABILITY -fno-strict-aliasing -DBOWTIE2_VERSION="\"`cat VERSION`\"" -DBUILD_HOST="\"`hostname`\"" -DBUILD_TIME="\"`date`\"" -DCOMPILER_VERSION="\"`g++ -v 2>&1 | tail -1`\"" -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE  -DBOWTIE_MM  -DBOWTIE2 -DBOWTIE_64BIT_INDEX -DNDEBUG -Wall -I third_party -c bt2_search.cpp ccnt_lut.cpp ref_read.cpp alphabet.cpp shmem.cpp edit.cpp bt2_idx.cpp bt2_io.cpp bt2_util.cpp reference.cpp ds.cpp multikey_qsort.cpp limit.cpp random_source.cpp tinythread.cpp qual.cpp pat.cpp sam.cpp read_qseq.cpp aligner_seed_policy.cpp aligner_seed.cpp aligner_seed2.cpp aligner_sw.cpp aligner_sw_driver.cpp aligner_cache.cpp aligner_result.cpp ref_coord.cpp mask.cpp pe.cpp aln_sink.cpp dp_framer.cpp scoring.cpp presets.cpp unique.cpp simple_func.cpp random_util.cpp aligner_bt.cpp sse_util.cpp aligner_swsse.cpp outq.cpp aligner_swsse_loc_i16.cpp aligner_swsse_ee_i16.cpp aligner_swsse_loc_u8.cpp aligner_swsse_ee_u8.cpp aligner_driver.cpp bowtie_main.cpp -lpthread

然后将所有的.o文件 移动到tmp目录下

执行

g++ -Wl --gc-sections -fPIC -shared -lstdc++ -o libbowtie2.so tmp/*.o -lrt -lz

即可

Bowtie2生成linux的动态链接库.so文件相关推荐

  1. Linux下动态链接库so文件覆盖导致coredump

    1.为什么cp的方式更新运行中进程的so,程序会coredump 2.采用什么方式更新已经加载了的so,就可以避免coredump 我们的公共组件绝大部分都支持so形式的自定义插件,比如s++,qzh ...

  2. linux 中如何将文件粘贴到usr下的lib内,学会在Linux下GCC生成和使用静态库和动态库...

    一.基本概念1.1什么是库 在windows平台和linux平台下都大量存在着库. 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行. 由于windows和linux的平台不同(主 ...

  3. linux找不到动态链接库 .so文件的解决方法(转自:http://www.cnblogs.com/xudong-bupt/p/3698294.html)

    linux找不到动态链接库 .so文件的解决方法 如果使用自己手动生成的动态链接库.so文件,但是这个.so文件,没有加入库文件搜索路劲中,程序运行时可能会出现找不到动态链接库的情形. 可以通过ldd ...

  4. jni加载第三方so_Linux的so文件到底是干嘛的?浅析Linux的动态链接库

    HelloWorld背后的故事:在Linux上编译C语言程序 我们分析了Hello World是如何编译的,即使一个非常简单的程序,也需要依赖C标准库和系统库,链接其实就是把其他第三方库和自己源代码生 ...

  5. linux中动态链接库用扩展名,Linux操作系统下动态库的生成及链接方法是什么?...

    Linux下动态库文件的扩展名为".so"(Shared Object).按照约定,所有动态库文件名的形式是libname.so(可能在名字中加入版本号).这样,线程函数库被称作l ...

  6. linux 生成和使用动态链接库和静态链接库的Makefile编写

    引用 Jesse Rei 的 linux 生成和使用动态链接库和静态链接库的Makefile编写 生成和使用动态链接库和静态链接库的Makefile编写 1. 概述 介绍linux下生成和使用动态链接 ...

  7. linux建立动态库链接,Linux动态链接库.so文件的创建与使用

    资料出处:http://linux.chinaitlab.com/administer/803560.html 编 写维护文件的目的,在于方便程序员维护程序,尤其是维护比较大的工程项目.一个素质良好的 ...

  8. linux 找不到动态链接库 .so文件的解决方法

    如果使用自己手动生成的动态链接库.so文件,但是这个.so文件,没有加入库文件搜索路劲中,程序运行时可能会出现找不到动态链接库的情形. 可以通过ldd命名来查看可执行文件依赖的动态链接库,如下(其中D ...

  9. linux下生成源程序控制流图,Linux下控制(统计)文件的生成的C代码实现

    本文分享了Linux下控制(统计)文件的生成的C代码实现案例,供大家参考,具体内容如下 一.需求描述不定时地在Linux机器下的某目录中放入文件,文件内容中包含了用户号码.起止时间等字段,现要求编写一 ...

最新文章

  1. pandas.read_table API
  2. NYOJ 8 一种排序
  3. java多线程间的通信传值_Java 多线程之间的通信
  4. deque与vector的主要区别
  5. freemarker文件乱码问题
  6. 实现机器学习的循序渐进指南IX ——树回归
  7. 牛客练习赛20:D. 最短路2
  8. Betsy Ross Problem
  9. 流畅的Python(Fluent Python)
  10. 1颜色原理及数字图片原理
  11. 面经-毕马威南京-实习-算法-20191216
  12. 苹果手机如何深度清理_手机应用 | 推荐5款深度清理手机内存的软件
  13. 计算机组成原理GLK,计算机组成原理课件第一讲.ppt
  14. 南京邮电大学操作系统实验四:简单文件系统模拟实验
  15. Scrapy爬虫框架(实战篇)【Scrapy框架对接Splash抓取javaScript动态渲染页面】
  16. Html5 Egret游戏开发 成语大挑战(三)开始界面
  17. php 参数与数字比较,PHP8中字符串与数字的比较更智能
  18. 21个有用的python工具
  19. gateway sentinel 熔断 不起作用_熔断器交流与直流有什么区别?错过这篇文章悔之晚矣!【超详细】上海民熔...
  20. hadoop集群平台的搭建

热门文章

  1. 怎样养出一个快乐温暖的孩子?分享具体可行的方法
  2. [转载]线程中CreateEvent和SetEvent及WaitForSingle
  3. regex和集合(collection)
  4. 联想Y9000P W11出现 你的PIN不可用,单击以重新设置PIN,也未设置其他的登录方式时的解决办法
  5. windows Nginx WebSocket ws协议反向代理
  6. spring aop详解
  7. 视频容器解析之RealMedia File Format
  8. 用php web编程作业,代做CSE2ISD作业、代做Web,php程序作业、代写Java/web编程作业、代写C/C++/Java留学生作业...
  9. sql in语句排序 INSTR函数排序用法 结果集list排序
  10. Git 创建远程分支与本地分支