我的第一次NGS分析操作
部分参考自:生物信息学100个基础问题 —— 番外2: 用Anaconda快速搭建生物信息学分析平台 - 孟浩巍的文章 - 知乎 https://zhuanlan.zhihu.com/p/35711429
1.首先将别的文件夹下的fastq.gz文件复制到我的文件夹下,首先进入到要复制的文件目录下:
cp ERR522819_2.fastq.gz ../../xhs
使用这个命令复制到xhs文件夹下
2.使用下列命令查看Linux系统是32位还是64位:
getconf LONG_BIT
显示是64位系统。
3.使用命令下载anaconda
wget https://repo.anaconda.com/archive/Anaconda2-5.3.0-Linux-x86_64.sh
并且安装anaconda:
bash Anaconda2-5.3.-Linux-x86_64.sh
并且在配置PATH时使用以下命令进行更新
source ~/.bashrc
4.设置bioconda的channel,一行一行地输入
conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda
5.使用conda安装fastqc
conda install fastqc
6.使用以下命令添加清华源,并且可以使用conda info查看结果,
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
7.遇到了问题,第5步之后,

Exception in thread "main" java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:)
at java.awt.Window.<init>(Window.java:)
at java.awt.Frame.<init>(Frame.java:)
at java.awt.Frame.<init>(Frame.java:)
at javax.swing.JFrame.<init>(JFrame.java:)
at uk.ac.babraham.FastQC.FastQCApplication.<init>(FastQCApplication.java:)
at uk.ac.babraham.FastQC.FastQCApplication.main(FastQCApplication.java:)
原因:因为fastqc运行需要可视化界面,但是这个linux并没有。
尝试1:在etc/profile下添加
export DISPLAY=localhost:
失败。直接找到打开[rofile并添加失败,因为权限不够:
xhs@dandan26:/etc$ cat >>profile
-bash: profile: 权限不够
使用:
chmod profile
提示:
chmod: 更改'profile' 的权限: 不允许的操作
总之就是各种权限不够无法修改,所以这个fastqc只能先放弃,待会问问其他人。[1]
8.安装fasxt-toolkit,先从官网上下载,http://hannonlab.cshl.edu/fastx_toolkit/download.html
wget http://hannonlab.cshl.edu/fastx_toolkit/fastx_toolkit_0.0.13_binaries_Linux_2.6_amd64.tar.bz2
并且使用命令查看系统版本:
lsb_release -a
结果:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04. LTS
Release: 16.04
Codename: xenial
9.根据文档指导安装fastx-toolkit——http://hannonlab.cshl.edu/fastx_toolkit/install_ubuntu.txt
使用以下命令安装,提示已经有gcc环境了,然后使用gcc -v查看它的版本:
sudo apt-get install gcc g++ pkg-config wget
Install libgtextutils
wget http://cancan.cshl.edu/labmembers/gordon/files/libgtextutils-0.6.tar.bz2
又有错误了,顺着命令安装,到make命令时,就错了。
pipe_fitter.c: In function ‘pipe_close’:
pipe_fitter.c::: error: variable ‘i’ set but not used [-Werror=unused-but-set-variable]
int i, status ;
^
cc1: all warnings being treated as errors
Makefile:: recipe for target 'pipe_fitter.lo' failed
make[]: *** [pipe_fitter.lo] Error
make[]: Leaving directory '/home/xhs/libgtextutils-0.6/src/gtextutils'
Makefile:: recipe for target 'all-recursive' failed
make[]: *** [all-recursive] Error
给这些东西也不明白。尝试了这个不能行。
$ CXXFLAGS="-Wall"
$ ./waf configure
按照CSDN论坛上的方法,将makefile文件中的-Werror(共2个)都去掉了:还是不行,并且重新断开连接之后,makefile中的-Werror还是会出现。[2]
想接着往下安装根本不行啊,因为之前的这个No package 'gtextutils' found,就进行不了后续的步骤了。哭唧唧。[3]
其中用到了./configure
——./configure是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,
又仔细看发现,有很多下面都有makefile
config.status: creating Makefile
config.status: creating README
config.status: creating doc/Makefile
config.status: creating m4/Makefile
config.status: creating src/Makefile
config.status: creating src/gtextutils/Makefile
config.status: creating gtextutils.pc
config.status: creating tests/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
共有6个makefile将其中的-werror都去掉,这个可以顺利安上,因为这个gtextutils安装不是在默认路径下,所以用下面的命令:
export PKG_CONFIG_PATH=/home/xhs/libgtextutils-0.6:$PKG_CONFIG_PATH
在这个路径下有gtextutils.pc文件,这样就可以找到了。
*那么.pc文件是什么呢?proc语法写成.pc文件。输入make安装fastx-toolkit时依旧是出现了和上述一样的error,但是本次由于makeprofile文件实在太多,所以选择使用命令。
使用unset PKG_CONFIG_PATH 命令可以清空设置的路径。

怎么就找不到了?
实在是搞不定了。
在fastx-toolkit下安装有:
Making all in fastx_collapser
make[]: Entering directory '/home/xhs/fastx_toolkit-0.0.12/src/fastx_collapser'
make[]: Nothing to be done for 'all'.
make[]: Leaving directory '/home/xhs/fastx_toolkit-0.0.12/src/fastx_collapser'
Making all in fastx_uncollapser
make[]: Entering directory '/home/xhs/fastx_toolkit-0.0.12/src/fastx_uncollapser'
g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/local/include/gtextutils -I../libfastx -I../libfastx -g -O2 -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -DDEBUG -g -O1 -DDEBUG -g -O1 -MT fastx_uncollapser.o -MD -MP -MF .deps/fastx_uncollapser.Tpo -c -o fastx_uncollapser.o fastx_uncollapser.cpp
fastx_uncollapser.cpp::: fatal error: gtextutils/stream_wrapper.h: 没有那个文件或目录
compilation terminated.
Makefile:: recipe for target 'fastx_uncollapser.o' failed
make[]: *** [fastx_uncollapser.o] Error
make[]: Leaving directory '/home/xhs/fastx_toolkit-0.0.12/src/fastx_uncollapser'
Makefile:: recipe for target 'all-recursive' failed
make[]: *** [all-recursive] Error
make[]: Leaving directory '/home/xhs/fastx_toolkit-0.0.12/src'
Makefile:: recipe for target 'all-recursive' failed
make[]: *** [all-recursive] Error
make[]: Leaving directory '/home/xhs/fastx_toolkit-0.0.12'
Makefile:: recipe for target 'all' failed
make: *** [all] Error
没有哪个文件或目录,真是绝望。不知道怎么处理了。
我的第一次NGS分析操作的更多相关文章
- Hudi 数据湖的插入,更新,查询,分析操作示例
Hudi 数据湖的插入,更新,查询,分析操作示例 作者:Grey 原文地址: 博客园:Hudi 数据湖的插入,更新,查询,分析操作示例 CSDN:Hudi 数据湖的插入,更新,查询,分析操作示例 前置 ...
- 从linux内核代码分析操作系统启动过程
朱宇轲 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 在本次的实验中, ...
- 关于JS中数组的分析操作
JS数组的基础操作代码: <script type="text/javascript"> 数组的三种定义 var arr1 = new Array( ...
- 第一次JVM分析记录:Out of Memory Error (workgroup.cpp:96), pid=6196, tid=139999645685504
tomcat的catalina.out日志报错如下: Exception in thread "http-bio-8081-Acceptor-0" java.lang.OutOfM ...
- MyBatis源码分析-SQL语句执行的完整流程
MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简 ...
- 精通Web Analytics 2.0 (11) 第九章: 新兴分析—社交,移动和视频
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第九章: 新兴分析-社交,移动和视频 网络在过去几年中发生了不可思议的发展变化:从单向对话到双向对话的转变; 由视频,Ajax和 ...
- 《Linux内核分析》期末总结
Linux内核设计期中总结 版权声明:本文为博主原创文章,未经博主允许不得转载. 前八周博客汇总及总结 Linux内核设计第一周——从汇编语言出发理解计算机工作原理 我们学习了汇编语言的基础知识,这一 ...
- MYSQL数据库的操作
Mysql的连接方式: 1.原生函数:mysql_connect($server,$username,$password); //打开一个到Mysql服务器的连接 mysql_select_db( ...
- CVE-2014-1767 漏洞分析(2015.1)
CVE-2014-1767 漏洞分析 1. 简介 该漏洞是由于Windows的afd.sys驱动在对系统内存的管理操作中,存在着悬垂指针的问题.在特定情况下攻击者可以通过该悬垂指针造成内存的doubl ...
随机推荐
- 第二百八十一节,MySQL数据库-SQL注入和pymysql模块防止SQL注入
MySQL数据库-SQL注入和pymysql模块防止SQL注入 SQL注入就是通过SQL语句绕开程序判断,获取到数据库的内容 下面以一个简单的程序登录SQL注入举例: 正常登录 1.数据库有一张会员表 ...
- Linux系统下修改MySQL密码(忘记密码)
忘记原来的myql的root的密码: 首先,你必须要有操作系统的root权限了.要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤.类似于安全模式登录系统,有人建议说是pkill m ...
- jQuery实现tag便签去重效果的方法
本文实例讲述了jQuery实现tag便签去重效果的方法.分享给大家供大家参考.具体实现方法如下: html代码如下: <head><script type="text/ja ...
- CDialog与CDialogEx的区别联系
CDialogEx是VS2003之后出现的,VC++6.0没有.CDialogEx = CDialog ExtendExtend的意思是扩展,即扩展的CDialog! 这个类是CDialog的扩展类, ...
- RMI几种公布和引用服务的方式
RMI是Java原生的分布式服务机制.支持Java对Java的分布式訪问.採用Java的序列化协议进行CodeC操作. 这里简单说下RMI公布服务和client引用服务的方式. RMI公布服务时支持两 ...
- Sql创建约束
add constraint pk_studentno primary key(StudentNo) //主键 add constraint fk_student_grade_gradeid fore ...
- m2014_c:C 工具库1:list
转自:http://www.cnblogs.com/sniperHW/archive/2012/04/02/2429607.html 近来考虑将项目基础框架的开发语言从C++换成C,免不了要编写一大堆 ...
- 主线程不能执行耗时的操作,子线程不能更新Ui
在Android项目中经常有碰到这样的问题,在子线程中完成耗时操作之后要更新UI,下面就自己经历的一些项目总结一下更新的方法: 在看方法之前看一下Android中消息机制: 引用 Message:消息 ...
- hdu1071(定积分求面积)
太弱了,写了一下午,高中基础太差的孩子伤不起... 记住抛物线是关于x轴对称的. 而且抛物线的方程可以是: y=k(x-h)+c //其中(h,c)为顶点坐标 The area Time Limit ...
- Groovy操作符
Groovy操作符 这一篇简单介绍一下Groovy中的操作符. 算数操作符 groovy支持java中的所有操作符,下面只列举一些groovy特有的: ** power运算符,也叫次方. assert ...