From 257f89f7cc4d584087be06e54d03b93a5cd64d6b Mon Sep 17 00:00:00 2001 From: "ISOFTSTONE\\ysliuci" Date: Fri, 8 Jul 2022 14:51:10 +0800 Subject: [PATCH 1/3] =?UTF-8?q?HPC=E8=BD=AF=E4=BB=B6featureCounts=E4=B8=8A?= =?UTF-8?q?=E4=BB=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LifeSciences/README.md | 1 + LifeSciences/featureCounts-2.0.3/build.sh | 55 ++++++++++++++++++ .../dependency/bisheng-compiler-2.1.0.sh | 48 +++++++++++++++ ...\350\257\225\346\212\245\345\221\212.docx" | Bin 0 -> 319638 bytes ...\346\244\215\346\214\207\345\215\227.docx" | Bin 0 -> 592331 bytes ...\345\273\272\346\214\207\345\215\227.docx" | Bin 0 -> 515664 bytes .../featureCounts-2.0.3.sh | 49 ++++++++++++++++ README.md | 1 + 8 files changed, 154 insertions(+) create mode 100644 LifeSciences/featureCounts-2.0.3/build.sh create mode 100644 LifeSciences/featureCounts-2.0.3/dependency/bisheng-compiler-2.1.0.sh create mode 100644 "LifeSciences/featureCounts-2.0.3/doc/featureCounts-2.0.3\345\272\224\347\224\250\346\265\213\350\257\225\346\212\245\345\221\212.docx" create mode 100644 "LifeSciences/featureCounts-2.0.3/doc/featureCounts-2.0.3\345\272\224\347\224\250\347\247\273\346\244\215\346\214\207\345\215\227.docx" create mode 100644 "LifeSciences/featureCounts-2.0.3/doc/\351\262\262\351\271\217\345\237\272\345\272\247\350\275\257\344\273\266\346\220\255\345\273\272\346\214\207\345\215\227.docx" create mode 100644 LifeSciences/featureCounts-2.0.3/featureCounts-2.0.3.sh diff --git a/LifeSciences/README.md b/LifeSciences/README.md index be58fcda..4e6e5d26 100644 --- a/LifeSciences/README.md +++ b/LifeSciences/README.md @@ -12,3 +12,4 @@ Life Sciences Software List: - repositories: hmmer-3.3.2 - repositories: Muscle-5.1 - repositories: 3d-dna-180922 +- repositories: featureCounts-2.0.3 diff --git a/LifeSciences/featureCounts-2.0.3/build.sh b/LifeSciences/featureCounts-2.0.3/build.sh new file mode 100644 index 00000000..ac4d0b52 --- /dev/null +++ b/LifeSciences/featureCounts-2.0.3/build.sh @@ -0,0 +1,55 @@ +#!/bin/bash +if [[ $# -ne 2 ]]; then + echo "The format is as follows:" + echo "bash build.sh buildpath installpath" + echo ":param buildpath: 应用构建绝对路径" + echo ":param installpath: 应用安装绝对路径" + exit 1 +fi + +[[ ! "$1" =~ ^/.* || "$1" = "/" ]] && echo "请输入正确的构建路径" && exit 1 +[[ ! "$2" =~ ^/.* || "$2" = "/" ]] && echo "请输入正确的安装路径" && exit 1 + +create_dir() +{ + local path=$1 + [[ "$path" =~ .*/$ ]] && path=${path%/*} + if [[ ! -d "$path" && ! -f "$path" ]]; then mkdir -p $path; else path=$path`date "+%y%m%d%H%M%S"` && mkdir -p $path; fi + echo $path +} + +buildpath=$(create_dir $1) +installpath=$(create_dir $2) + +yum install -y m4 environment-modules systemd-devel +source /etc/profile +module purge + +set -e +dep_dir="dependency" + +bash $dep_dir/bisheng-compiler-2.1.0.sh $buildpath $installpath +module use $installpath/bisheng-compiler-2.1.0/ +module load $installpath/bisheng-compiler-2.1.0/bisheng_modulefiles + +bash featureCounts-2.0.3.sh $buildpath $installpath + +mkdir -p pkg/featureCounts-2.0.3-hpc && cp -r $installpath/* pkg/featureCounts-2.0.3-hpc/ +cat>"pkg/featureCounts-2.0.3-hpc/run.sh"< /dev/null +current_dir=\$(cd "\$(dirname "\${BASH_SOURCE[0]}")" &> /dev/null && pwd) +for d in \$(ls \$current_dir) +do + [[ ! \$d =~ "subread" && ! -f "\$current_dir/\$d" ]] && cd \$current_dir/\$d && module use \$(pwd) && module load \$(pwd)/*modulefiles +done +cd \$current_dir +ln -s \${current_dir}/subread/bin/featureCounts /usr/local/bin/featureCounts +EOF + +cd pkg/ && tar zcvf featureCounts-2.0.3-hpc.tar.gz featureCounts-2.0.3-hpc + +rm -rf $buildpath $installpath + diff --git a/LifeSciences/featureCounts-2.0.3/dependency/bisheng-compiler-2.1.0.sh b/LifeSciences/featureCounts-2.0.3/dependency/bisheng-compiler-2.1.0.sh new file mode 100644 index 00000000..f958ad90 --- /dev/null +++ b/LifeSciences/featureCounts-2.0.3/dependency/bisheng-compiler-2.1.0.sh @@ -0,0 +1,48 @@ +#!/bin/bash + +if [[ $# -ne 2 ]]; then + echo "The format is as follows:" + echo "bash bisheng-compiler-2.1.0.sh buildpath installpath" + echo ":param buildpath: 应用构建绝对路径" + echo ":param installpath: 应用安装绝对路径" + exit 1 +fi + +[[ ! "$1" =~ ^/.* || ! -d "$1" || "$1" = "/" ]] && echo "请输入正确的构建路径" && exit 1 +[[ ! "$2" =~ ^/.* || ! -d "$2" || "$2" = "/" ]] && echo "请输入正确的安装路径" && exit 1 + +buildpath=$1 +installpath=$2 +[[ "$buildpath" =~ .*/$ ]] && buildpath=${buildpath%/*} +[[ "$installpath" =~ .*/$ ]] && installpath=${installpath%/*} + +if [[ "$buildpath" = "$installpath" ]]; then + echo "构建路径与安装路径需为不同路径" + exit 1 +fi + +set -e +yum install -y wget tar environment-modules libatomic + +wget -t 0 -c -P $buildpath https://mirrors.huaweicloud.com/kunpeng/archive/compiler/bisheng_compiler/bisheng-compiler-2.1.0-aarch64-linux.tar.gz +tar xvf $buildpath/bisheng-compiler-2.1.0-aarch64-linux.tar.gz -C $buildpath && rm -rf $buildpath/bisheng-compiler-2.1.0-aarch64-linux.tar.gz +mkdir -p $installpath/bisheng-compiler-2.1.0 && cp -r $buildpath/bisheng-compiler-2.1.0-aarch64-linux/* $installpath/bisheng-compiler-2.1.0/ + +cat>"$installpath/bisheng-compiler-2.1.0/bisheng_modulefiles"<gg!AoFp&^ z6u^Hiv zEUm%u%(%cVz7(-vvHAUdeSdpinbUb4VVL>WaS&$lekaQD*ICT(PQ$f?Y5 z)#&Hi@sFHcpZw!w-VAt2(nc;v&K9eAJB=YA(=_Lp3Z@2XRA@cxZDt+#WI_b0WmbR9 z@1CU3C2V)fzbr>)LL3DjW!n1VD{e{i^0D=4VH%((LUkrR%3Zh1+XI*D3-_8E5^6j6 z8oEDOYaX$v@tIR#AD+^|rggoxN%ITASi#pM;o7m@+p=_CNu^tg!fi88V%x_MK*6Ep zRBep|c4Q4;N%Mz?eY#=%iaE;%bB?MUh#$8FURkfHtA48~w#iVE>e^j(92b2& z65qq>T;dLH;?AaJKN~nA2kaAzr_ECFJhB`5_wIC%DBSXVGkKpdY@*~XeT^uLHtM`+ zkH;vqI<@j_d-u1SfEbov0y6#h?IfXVyfJarI6+!=(kS7Na|6C`%3c9AsauG>3N1N@ zNdW;q6@n(!cMPa(?B?DbI`Rwne}fwUVI!LT58R!9;3EE?;2PRG82<-d?}UDvC3=LA zTd^*|Bc|}|Dzy#rONpim_9i5xNWQHpw+>6Yt1*|18{|Gf8?i1R+dgD@oxrtq*hoI? z>)+hj->J60otDlnkuy}5Dn-=j<8yw=6ILom#~+Nm1nKYtV)@nmsO$M;reFJkU>%rM zgQqhtX8{7a(Zq+AXDUWm0;-A^`jORl!)Nq`Zid=a18z=O8<1{vtYTCnDNV!pMGyfZ zdOOoX4Wbfh@!GdeKw^1i^}@(pG?58EFJMm9zoz^OFEJa#9i@mIhFnS5af-BapFh`}L4Ar^paQ0U&_3EalAiHL z!2+Q$-)HG|Z+Lxrf1mb8Piw~+wMR{`cPieL-wo7@(M}?rJ|0CMbpIPmBdkQ~3=jZ- zV;BGc^&tR(gb}p!pS+>N z{NVopF-dPQS6ehV=WaJiTnn>EUl)nDr;$2$mpAPqnSIio5C@N2yEKkJZr_hSa@{)a zIOZHyYcdIvd0BC07~7Ebfu-Zug;NVNfp3Nfx-blrLX0L$3$M^1+mZoY5!+mMea@&1 zwvev5uv{S!1f5%vh177aOO@g<4~1M=1;tL^gGJ%T+kdtm!~0U>ZJ#qoMw-6rYUcR~MlySl zTn|`i4%S$K1BrB4P1>wUBF0B{>gMozyZk(L9tS24x9Vo``nIumdjEXQKO{08Twe~4 zXCDvBrjp@>+9Lb@2xxhCbHR?9?pLe6_Ud@OTpm=G)+Y^DO;{M+qn=FE?}2#He{;crFMUYY3|8Ma1v zSBaYGa{Vx9iQdNrqPoK;_?=_O*ealTsE^4pqaxn(Jo6`*n0Wr&%|TVc0iSrj(o$)DUe_Jll4Gk7Z6(t)GKE zdTThhMU2UA8b#MS#qDp>rhKVrbDaR*cMdc?_Y`+@zu1b!jTbj_7osv$)G%;kLN%U9m#v?NrBdTDuI` zp{~8gex;~4VW#SZ@&KO4ML&tOSO=B3H(~Y#I1hlV^}SPm-{V z9fL^&mruj#qDhMW-K_Bx@sSY-23t0Si;|M)r8X%e7X4K3BuuXC6f+Dw!lqZmGColT zRz_t}Oj}lu7H8zIAHq{5BS)Z8S$&akQ%hb@bEVl8kZVau)nh6o#ZlTIH@|8DCMFLo ziYOUR;6qK*!UH)GyP)EUWWjmD#acp^#-%} zxu_yNA!!(T+EK@O9fta>$BCEkDuO+H0`|QLW zOug7#{cCuz>VI0+!4;MU&FF+C5H~*HW}zdxVN?0@Q5OHmtPMGfg@_YpqzB~}eK)HI z43I)-7!SOvt~w)$=+n}-@VA0*5r1&rDrWjP!W{|?FgKrxOY*lc>uI?D>EhSu^nd0Y z|Nm1H(0^T-tF434|7%)u@Fz~%krM#GI2i~4{(nUro!qUA9skqQU3*K$5{oB>;N$zL@u4^&fgsEY zd&U7E0`Z^E+KFcQ5ysVp^oZR%jN9LY1_LnwQH4ysx z(0?7=>BXHS8e|;f<=}a_K7OpP_vdMlzB8wzx_^A_Icng14cq=c_kK(d3O9doNmc?f z$Ep5#9DfY_Ja(|ZKTcgf;>jjk{xeKCy`SnT{8u*R&hUMI(p|wvizY`p;+;_4q;;KI z)91&*$<57yFOwn%uWI5efc4%gM|z@w@+RdhIr89!HnZpn??q(2MEBvO(x4%u^d0H- z%{YB#4=bXpV-^k7(i(RI6XrgLj@3 zeLsE$A-9cA@1Tcx@E3^%v=$!z-WPJ0fy>F8A=~AN^|B$uoEx)9y6BCzlO{1C3w-vv|;C<>{IfHxh4oT&Dg8*;Jt>g#MH{|bQ$5`s}-acVDsrt*;9%*JEqi!*Lplzf(P~xYZ z{V!qdRIhlV#e2cTUghu8Xz%-}?+5V5rFb#h!?CUJBgswfHKjJ z>f4Mya**4H;O>l}FST>4vv7K6-Y*Whq!8m^gU-&(8mgj)&dyFvH8C-(%k$$M930xJ zqNbM@XI-~34PF^POTFz0HXdv$3({PQBy-{#(Wa>emG@C{RxCNg;ngEdboI+_EyOLD z!*(NUikjFL4QWI5nIk#{Y0`#t@>M1EspKk4Ymz9H7FQ$@$t*8O!xxyI;ReCc-9q&e z(MxbU0mzf7^I9bR@tp-~C&P?5)Qh@yK7u=ANDP|@JS+k3R1b(932$W%v!)1~jFPGI%F_~|nF&pR1(izLJ$guYy@ z<&52ul4G95@tg=Sm9?}c>N#)^%U`S=4|ECe+|5}hiZI6B(~y?E;AKZANmVJYtsMH=_;im)&cuw%va&PpU^7Z5eNM1-XLQpEBF- zYe2bbR9h!;?+!WAtHo^a8}bJ#Y^{WAt)HA#fI_cG5DjmLJJhxFwcr=B-uAR(@mVV? zG-INHohOCL=1(;*@joC;>Uwaenc|f_p;5ZtyTl~LV7#JC8d73({xquJ$H}a&>_0b9 z6DD9x*7ao2-6T?07D(eA^EUmM-8naeZ9RQrpsWZf(h`7uUSK3$O@Z0;{E?9s!x-C} z^%1lE<$6f!YJdOO-UBUCc$j_E$+#ie5AXe8jJ&}V?;K`snH;_bs-JZb3r4L+Zfbk( zmEzq+gG9+4p4K{S*%gFBT9v0+)Y<5jIf*U#qp;}wzpJXqvT*)1FG9Glf*j z6{(<`I|**ynH{QI`OHpV^QXvuHBd=%tyGtVav#sQH9t{*er088 zd-gFcVJjZm#pTo#Q2KE-X1x|KYCHEi3eUU|P5Va>|0Cq1v1(zm5oiq<{|P-|vTeue9F}~}TW&e=dPM(gTWi1gea2$bf!B@Oi&^CA+Bf>? zFeCu}ebzR|&zljm@@L^4h?OEaH~L=5O-%@3uTuSkAiO6|WWz@n&DHEuJzjLHnyBE9 zM#~x95n=ReA$wfoMR<8$%ID|Fn#K>KKQa9kd}PO&#rV_;as4034*%@Rlq}Ij6SfA1 z*@yMp2Kd*>{^xFQmQs7BZAcw4*Opkl9d?@O=-4@2KGVZ67f@Cn7v>*lj%gJ~Ru(i* zi=Usu7wt6I%J#^^6WY35mc*`;7k&69We}$nyU+Yx-;FJvl9l{jc&y>f9=uk(kMEjk zIwv2yPZKxGtY1Z`bsEw;sF!N^f$7U7<4!Kl46f}yZaQT`E=!LVI)i2v#x`hjo7KyLeDHcrLS=|RApXpl*@J?$aI zz;Ea3+lmSSF6u7B1o}9gw08DzHsaabLS2qvck*%E16|ET|FPEM@&2)pfOhh|+w1%d zD+D;@>1i7*q`R8Y(E^_T(-A4j!TQewDv&P0&;RxAza8$2 z`Re0rLjFT(m!+8YFCtp2J@4@USck@S6D4#5cR7OJIl;_W`yXX|9B!d62MIB-|I|SN z-p=*>3--U&{U7lY|Hr6{x4nsPvAOQ3-$j03={mbkox}#`9E3s z=L7goes+-G|LtBHWx&65(7Ns6gzrUj1|WYA55CVszPwSwko#&3luVt1L%a0AR)hr< ze#{GlJY9Kzh1%Yqf1PnFK|uRHQuu$O3?bi}?*r}JY23CL`MQf$!0!P8E{!y(bp&pkN45+N(1#4261&!o zCjAD*U=21kt6AePIjY`yFyrrd_Apvu(JKYz2r1Rz(+b++ho+&^)h*qJ{_CE&X z7QZ*%*364G!29^zJ$^S%QazoqW)3(bioaidfM!7KpMX=pfC=wcFpQ|ug;ns&-WZa| zwnA#%-NE8Pe@|e~a2e>z5DDS2e592`Qkel&%JpO*Qy4eOGOds+qr7cv)+o2xqLcgT z-#bJMdumeeo4~(Na`;2BA`iwQH&Gyvnm1F=#V*h05f1I}|HduMryE|QFC$UmEl)NI zerWT`sM(Szco#$rTZAV)Wivu`vMOwQs-xh6)9o>r?A9VZWj|3OJlj`;^!^;~LcRKl z`G%T4rF`8Q2me+---Ja-EO9)_1l^)C1_s=HKSK1UdX)z8(y)*o60}wv z<+uIChS5`@)_`a!{EN<|DnG^91{H4GwGtu}FsZL9bgA_1puqoKtYmNx7Z)jJ0HO{& zo)m+eDHg3zXym-=CO){`VaP?(lkCf+3`GxWc`X%`9YqqAfxZlJn6Eu77X59hgKURE z5lpke5vEGP<7f zu?}2FS!T6<_}Pa6M%KY4o9o~YA!DNVo1T%@=pF4RwQ;HWv;zgEk3WD1_Bl!30I|Ng;;!A07aAIv*gosd-vjKe)<-&g>(!?}rqXyExNP3%Z&l}#u?X{ibixir$gd2Ol?R6r z(zxGKKsKa3fyg5E4vOzM5(L^rrmq)Nm$o%ayH6>Y!;d$qZ$;ywlLpEr=HWFtsEpDR ziy4&Te`X?lLwNaNnBCRJP5k9FlbkEH|9Xlr!Cgu?2rS4Bt7px-k`i&Cmyu%{fzp$V z@zM2@;Xe|~-Vj^@rAzoho|}G%GUozFM7qb*J;6M8(RMV>PH~k}y}ZoW9b>2fPizgz z$HuhJk9XC`h`2y|pB+ycoFGO%LG88FJ(4zr_xHs@J