linux下编译C/C++ 程序
C/C++的速度是Python和perl所无法比拟的,尤其对于处理超大的生物信息学文件来说。
最近在写一个最简单的fastq cut工具,Python简直慢到不能忍,8G的fastq.gz文件的cut需要6-7个小时,而C++则只需要15-20min,简直就不在一个量级。
当然,听说Python有个cpython机制,可以加快速度,但和纯C++还是有差距的。
C++的编译比较复杂,这里只能做个入门的介绍。
Makefile机制
Linux的库好复杂,现在都没搞懂。
export SOFTWARE=software export PATH=$SOFTWARE/bin:$PATH export LD_LIBRARY_PATH=$SOFTWARE/lib64:$SOFTWARE/lib:/usr/lib64:/lib64:$LD_LIBRARY_PATH:$SOFTWARE/opt/lib export LD_RUN_PATH=$SOFTWARE/lib:$LD_RUN_PATH export CPATH=$SOFTWARE/include:$CPATH #include path for gcc export LIBRARY_PATH=$SOFTWARE/lib:$LD_LIBRARY_PATH export MANPATH=$SOFTWARE/share/man:$MANPATH export PKG_CONFIG_PATH=$SOFTWARE/lib64/pkgconfig/:$SOFTWARE/lib/pkgconfig:$PKG_CONFIG_PATH # export PERL5LIB=$SOFTWARE/lib/perl5:$SOFTWARE/lib/perl5/site_perl/5.8.8:$PERL5LIB
LD_LIBRARY_PATH,configure的时候要依赖很多so动态库,需要加载。
configure机制