PDA

View Full Version : Admixtools & Ubuntu



anglesqueville
02-26-2017, 03:51 PM
Did anyone ever installed Admixtools under Ubuntu? If yes ( :pray: ) I need help !

evon
02-26-2017, 07:46 PM
Did anyone ever installed Admixtools under Ubuntu? If yes ( :pray: ) I need help !

You mean R? Yes I have used it both via native Linux and also Wine (Converter)..

anglesqueville
02-26-2017, 07:56 PM
No, I mean AdmixTools ( the softs package from Harvard that includes qpAdm, etc).

evon
02-26-2017, 07:58 PM
No, I mean AdmixTools ( the softs package from Harvard that includes qpAdm, etc).

Ah okay, no I have not used that one yet..If it is a technical issue I would go to the Ubuntu forums..

King
02-27-2017, 10:07 AM
ive used some of the software from the reich lab like convertf successfully using cygwin (which is a linux command prompt for windows). however i never could get the admixtools running. i was convinced that there is a problem with the build stemming from the source code. ive seen others encounter issues from the comment section on github, but i dont know maybe the problem was on my end. if there really is a problem with the build, maybe this is why youre experiencing problems?

that or something is wrong/missing from our compilers (though im convinced theres nothing missing from my compiler)

King
02-27-2017, 10:26 AM
ah see i think i had the same errors as this guy: https://github.com/DReichLab/AdmixTools/issues/9

the solution provided never worked for me (nor for the guy who raised the issue).

anglesqueville
02-27-2017, 10:32 AM
ive used some of the software from the reich lab like convertf successfully using cygwin (which is a linux command prompt for windows). however i never could get the admixtools running. i was convinced that there is a problem with the build stemming from the source code. ive seen others encounter issues from the comment section on github, but i dont know maybe the problem was on my end. if there really is a problem with the build, maybe this is why youre experiencing problems?

that or something is wrong/missing from our compilers (though im convinced theres nothing missing from my compiler)

The problem is with the compilation procedures of the newest version of Ubuntu, precisely with the linkage to the math libraries ( hundreds of messages " undefined function exp, or cos, etc" when trying to compile). Seemingly it's a bug of the new ubuntu, and it's known on the ubuntu forums ( and on Reich's site on github itself). I've tried so far two things, that did not run. I'll try this afternoon to correct the Makefile. If that works, I'll inform you on this thread. If that does'nt... perhaps I'll try to find an old version of Ubuntu somewhere.

anglesqueville
02-27-2017, 04:13 PM
Well... 4 hours lost. As nothing worked on Ubuntu, I installed Debian Mint ( basically the same, but who knows ?). Again the same problem ( https://github.com/DReichLab/AdmixTools/issues/9 ) . Really don't know what to do. If someone has an idea... :frusty:

Helgenes50
02-27-2017, 04:26 PM
Well... 4 hours lost. As nothing worked on Ubuntu, I installed Debian Mint ( basically the same, but who knows ?). Again the same problem ( https://github.com/DReichLab/AdmixTools/issues/9 ) . Really don't know what to do. If someone has an idea... :frusty:

Who is this Ubuntu ! a sub-saharan hunter ?

Dubhthach
02-27-2017, 04:33 PM
If the issue is to do with changes in GCC, your best bet might be to run a slightly older distro running virtualised in say Virtualbox (or VMWare Workstation/Player). For example they might be using RedHat/Centos on their own systems. If you put Centos 6 (or perhaps Centos 7) ye probably get older version of GCC. Here are relevant version strings from RHEL6 and RHEL7



[[email protected] ~]# rpm -qa | grep gcc
compat-gcc-34-3.4.6-19.el6.x86_64
gcc-objc++-4.4.7-17.el6.x86_64
gcc-4.4.7-17.el6.x86_64
compat-gcc-34-g77-3.4.6-19.el6.x86_64
gcc-java-4.4.7-17.el6.x86_64
libgcc-4.4.7-17.el6.x86_64
gcc-c++-4.4.7-17.el6.x86_64
compat-gcc-34-c++-3.4.6-19.el6.x86_64
gcc-gfortran-4.4.7-17.el6.x86_64
gcc-objc-4.4.7-17.el6.x86_64
gcc-gnat-4.4.7-17.el6.x86_64

[[email protected] ~]# rpm -qa | grep glibc
glibc-headers-2.12-1.192.el6.x86_64
compat-glibc-2.5-46.2.x86_64
glibc-devel-2.12-1.192.el6.x86_64
glibc-utils-2.12-1.192.el6.x86_64
glibc-2.12-1.192.el6.x86_64
compat-glibc-headers-2.5-46.2.x86_64
glibc-common-2.12-1.192.el6.x86_64


RHEL7


[[email protected] ~]# rpm -qa | grep gcc
gcc-objc++-4.8.5-11.el7.x86_64
gcc-objc-4.8.5-11.el7.x86_64
compat-gcc-44-4.4.7-8.el7.x86_64
libgcc-4.8.5-11.el7.x86_64
gcc-gfortran-4.8.5-11.el7.x86_64
gcc-4.8.5-11.el7.x86_64
compat-gcc-44-c++-4.4.7-8.el7.x86_64
gcc-gnat-4.8.5-11.el7.x86_64
gcc-c++-4.8.5-11.el7.x86_64
[[email protected] ~]#
[[email protected] ~]#
[[email protected] ~]# rpm -qa | grep glibc
glibc-utils-2.17-157.el7_3.1.x86_64
glibc-common-2.17-157.el7_3.1.x86_64
glibc-headers-2.17-157.el7_3.1.x86_64
compat-glibc-2.12-4.el7.x86_64
compat-glibc-headers-2.12-4.el7.x86_64
glibc-devel-2.17-157.el7_3.1.x86_64
glibc-2.17-157.el7_3.1.x86_64


So GCC 4.4 on RHEL6/Centos6 and GCC 4.8 on RHEL7/Centos7 -- not sure what current Debian/Ubuntu are running. I'll have a look what's on my Fedora 25 laptop when I get home form work later.

anglesqueville
02-27-2017, 04:34 PM
Who is this Ubuntu ! a sub-saharan hunter ?

Hem, Ubuntu is not an african hunter, and Debian Mint ( pronounce Debby-Ann) is not an irish teen with a pale green minishirt. These are Linux distributions. You were dreaming of qpAdm models for you and the other French? Don't be too optimistic...

anglesqueville
02-27-2017, 04:40 PM
If the issue is to do with changes in GCC, your best bet might be to run a slightly older distro running virtualised in say Virtualbox (or VMWare Workstation/Player). For example they might be using RedHat/Centos on their own systems. If you put Centos 6 (or perhaps Centos 7) ye probably get older version of GCC. Here are relevant version strings from RHEL6 and RHEL7



RHEL7


So GCC 4.4 on RHEL6/Centos6 and GCC 4.8 on RHEL7/Centos7 -- not sure what current Debian/Ubuntu are running. I'll have a look what's on my Fedora 25 laptop when I get home form work later.

Yes, I agree. I have to install older distributions. I want to try Centos 6 ( never worked with it, but after all a Linux is a Linux...). Thanks very much.

Dubhthach
02-27-2017, 04:42 PM
Yes, I agree. I have to install older distributions. I want to try Centos 6 ( never worked with it, but after all a Linux is a Linux...). Thanks very much.

I'm gonna try compiling the tarball on a RHEL7 box I have here. Just have to install OpenBlas libs from EPEL first. Let me see if that runs.

Dubhthach
02-27-2017, 04:46 PM
First run:


[[email protected] src]$ make clobber
rm -f *.o
rm -f *junk*
rm -f core
rm -f libnick.a
rm -f qp3Pop qpDstat qpF4ratio qpAdm qpWave rolloff convertf dowtjack expfit.sh grabpars qpBound qpGraph
rm -f nicksrc/*.o
rm -rf /home/dubh/AdmixTools-master/src/admixlib
rm -rf /home/dubh/AdmixTools-master/src/admixtables
rm -rf /home/dubh/AdmixTools-master/src/admixinclude
rm -f /home/dubh/AdmixTools-master/src/admixlib/nicklib.a tables
rm -f ../bin/*
[[email protected] src]$ make install
mkdir -p /home/dubh/AdmixTools-master/src/admixlib
mkdir -p /home/dubh/AdmixTools-master/src/admixtables
mkdir -p /home/dubh/AdmixTools-master/src/admixinclude
mkdir -p /home/dubh/AdmixTools-master/src/../bin
cp *.h /home/dubh/AdmixTools-master/src/admixinclude
cp nicksrc/*.h /home/dubh/AdmixTools-master/src/admixinclude
echo "tables made" > tables
cp twtable /home/dubh/AdmixTools-master/src/admixtables
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o strsubs.o nicksrc/strsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o sortit.o nicksrc/sortit.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o vsubs.o nicksrc/vsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -o statsubs.o nicksrc/statsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o linsubs.o nicksrc/linsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o getpars.o nicksrc/getpars.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o xsearch.o nicksrc/xsearch.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o gauss.o nicksrc/gauss.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o gds.o nicksrc/gds.c
ar -r libnick.a strsubs.o sortit.o vsubs.o statsubs.o linsubs.o getpars.o xsearch.o gauss.o gds.o
ar: creating libnick.a
ranlib libnick.a
cp libnick.a /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qp3Pop.o qp3Pop.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpsubs.o qpsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o mcio.o mcio.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o ldsubs.o ldsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o admutils.o admutils.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o egsubs.o egsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o regsubs.o regsubs.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qp3Pop qp3Pop.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpDstat.o qpDstat.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qpDstat qpDstat.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpF4ratio.o qpF4ratio.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qpF4ratio qpF4ratio.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpAdm.o qpAdm.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o f4rank.o f4rank.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o eigsubs.o eigsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o eigx.o eigx.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lopenblas -fopenmp qpAdm.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o f4rank.o eigsubs.o eigx.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a -Wl,-Bdynamic -lgsl -Wl,-Bstatic -lopenblas -Wl,-Bdynamic -lgfortran -lm -o qpAdm
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpWave.o qpWave.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lopenblas -fopenmp qpWave.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o f4rank.o eigsubs.o eigx.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a -Wl,-Bdynamic -lgsl -Wl,-Bstatic -lopenblas -Wl,-Bdynamic -lgfortran -lm -o qpWave
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o rolloff.o rolloff.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o rolloff rolloff.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o convertf.o convertf.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o h2d.o h2d.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o exclude.o exclude.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o convertf convertf.o mcio.o admutils.o egsubs.o h2d.o exclude.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o dowtjack.o dowtjack.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o dowtjack dowtjack.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
sed -e "s&BBBIN&/home/dubh/AdmixTools-master/src/../bin&" < expfit.templ > expfit.sh
chmod +x expfit.sh
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o grabpars.o grabpars.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o grabpars grabpars.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpBound.o qpBound.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qpBound qpBound.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpGraph.o qpGraph.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o gslqp.o gslqp.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpgsubs.o qpgsubs.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lgsl -lopenblas -lm -llapack -o qpGraph qpGraph.o gslqp.o qpgsubs.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
/bin/ld: cannot find -llapack
collect2: error: ld returned 1 exit status
make: *** [qpGraph] Error 1


Let me track down that missing library (lapack?)

Dubhthach
02-27-2017, 04:51 PM
Looks like it built:



[[email protected] src]$ make install
mkdir -p /home/dubh/AdmixTools-master/src/admixlib
mkdir -p /home/dubh/AdmixTools-master/src/admixtables
mkdir -p /home/dubh/AdmixTools-master/src/admixinclude
mkdir -p /home/dubh/AdmixTools-master/src/../bin
cp *.h /home/dubh/AdmixTools-master/src/admixinclude
cp nicksrc/*.h /home/dubh/AdmixTools-master/src/admixinclude
echo "tables made" > tables
cp twtable /home/dubh/AdmixTools-master/src/admixtables
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o strsubs.o nicksrc/strsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o sortit.o nicksrc/sortit.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o vsubs.o nicksrc/vsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -o statsubs.o nicksrc/statsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o linsubs.o nicksrc/linsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o getpars.o nicksrc/getpars.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o xsearch.o nicksrc/xsearch.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o gauss.o nicksrc/gauss.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o gds.o nicksrc/gds.c
ar -r libnick.a strsubs.o sortit.o vsubs.o statsubs.o linsubs.o getpars.o xsearch.o gauss.o gds.o
ar: creating libnick.a
ranlib libnick.a
cp libnick.a /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qp3Pop.o qp3Pop.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpsubs.o qpsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o mcio.o mcio.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o ldsubs.o ldsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o admutils.o admutils.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o egsubs.o egsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o regsubs.o regsubs.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qp3Pop qp3Pop.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpDstat.o qpDstat.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qpDstat qpDstat.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpF4ratio.o qpF4ratio.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qpF4ratio qpF4ratio.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpAdm.o qpAdm.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o f4rank.o f4rank.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o eigsubs.o eigsubs.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o eigx.o eigx.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lopenblas -fopenmp qpAdm.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o f4rank.o eigsubs.o eigx.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a -Wl,-Bdynamic -lgsl -Wl,-Bstatic -lopenblas -Wl,-Bdynamic -lgfortran -lm -o qpAdm
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpWave.o qpWave.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lopenblas -fopenmp qpWave.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o f4rank.o eigsubs.o eigx.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a -Wl,-Bdynamic -lgsl -Wl,-Bstatic -lopenblas -Wl,-Bdynamic -lgfortran -lm -o qpWave
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o rolloff.o rolloff.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o rolloff rolloff.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o convertf.o convertf.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o h2d.o h2d.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o exclude.o exclude.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o convertf convertf.o mcio.o admutils.o egsubs.o h2d.o exclude.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o dowtjack.o dowtjack.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o dowtjack dowtjack.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
sed -e "s&BBBIN&/home/dubh/AdmixTools-master/src/../bin&" < expfit.templ > expfit.sh
chmod +x expfit.sh
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o grabpars.o grabpars.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o grabpars grabpars.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpBound.o qpBound.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lm -o qpBound qpBound.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpGraph.o qpGraph.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o gslqp.o gslqp.c
cc -c -g -p -I/home/dubh/AdmixTools-master/src/admixinclude -Wimplicit-int -c -o qpgsubs.o qpgsubs.c
gcc -I/home/dubh/AdmixTools-master/src/admixinclude -g -lgsl -lopenblas -lm -llapack -o qpGraph qpGraph.o gslqp.o qpgsubs.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubh/AdmixTools-master/src/admixlib/nicklib.a
mkdir -p ../bin
cp qp3Pop qpDstat qpF4ratio qpAdm qpWave rolloff convertf dowtjack expfit.sh grabpars qpBound qpGraph ../bin
cp rexpfit.r wtjack.pl ../bin


Here are additional packages I had to install on host:



[[email protected] ~]# tail -n 50 /var/log/yum.log | grep "Feb 27"
Feb 27 16:43:41 Installed: openblas-threads64_-0.2.19-4.el7.x86_64
Feb 27 16:43:43 Installed: openblas-serial64_-0.2.19-4.el7.x86_64
Feb 27 16:43:45 Installed: openblas-openmp64-0.2.19-4.el7.x86_64
Feb 27 16:43:47 Installed: openblas-openmp-0.2.19-4.el7.x86_64
Feb 27 16:43:49 Installed: openblas-threads-0.2.19-4.el7.x86_64
Feb 27 16:43:51 Installed: openblas-threads64-0.2.19-4.el7.x86_64
Feb 27 16:43:54 Installed: openblas-0.2.19-4.el7.x86_64
Feb 27 16:43:57 Installed: openblas-openmp64_-0.2.19-4.el7.x86_64
Feb 27 16:43:58 Installed: openblas-serial64-0.2.19-4.el7.x86_64
Feb 27 16:43:59 Installed: openblas-devel-0.2.19-4.el7.x86_64
Feb 27 16:44:21 Installed: openblas-static-0.2.19-4.el7.x86_64
Feb 27 16:44:23 Installed: openblas-Rblas-0.2.19-4.el7.x86_64
Feb 27 16:48:53 Installed: blas-devel-3.4.2-5.el7.x86_64
Feb 27 16:48:53 Installed: lapack-devel-3.4.2-5.el7.x86_64
Feb 27 16:48:54 Installed: lapack64-3.4.2-5.el7.x86_64
Feb 27 16:48:54 Installed: blas64-3.4.2-5.el7.x86_64
Feb 27 16:48:54 Installed: blas64-devel-3.4.2-5.el7.x86_64
Feb 27 16:48:54 Installed: lapack64-devel-3.4.2-5.el7.x86_64
Feb 27 16:48:55 Installed: lapack64-static-3.4.2-5.el7.x86_64
Feb 27 16:48:58 Installed: lapack-static-3.4.2-5.el7.x86_64


I imagine it should work fine with Centos 7. I'll give it a shot later this evening on Fedora 25. Other than compiling it I haven't done any testing.

Dubhthach
02-27-2017, 05:05 PM
Yup it definetly works on RHEL7. I just downloaded their Example data:



[[email protected] examples]$ ./mklog
../bin/qpF4ratio -p parqpF4ratio > qpF4ratio.log
../bin/qp3Pop -p parqp3Pop > qp3Pop.log
../bin/qpBound -p parqpBound > qpBound.log
../bin/qpDstat -p parqpDstat1 > qpDstat1.log
../bin/qpDstat -p parqpDstat > qpDstat.log
../bin/qpWave -p parqpWave > qpWave.log
../bin/qpAdm -p parqpAdm > qpAdm.log

[[email protected] examples]$ head -n 50 qpAdm.log
../bin/qpAdm: parameter file: parqpAdm
### THE INPUT PARAMETERS
##PARAMETER NAME: VALUE
DIR: ../data
S1: qpdata
indivname: ../data/qpdata.ind
snpname: ../data/qpdata.snp
genotypename: ../data/qpdata.geno
popleft: left1
popright: right1
details: YES
## qpAdm version: 401
packed geno read OK
end of inpack

left pops:
Corded_Ware_LN
WHG
LBK_EN
Yamnaya

right pops:
Han
Eskimo
Mbuti
Karitiana
Ulchi

0 Corded_Ware_LN 4
1 WHG 2
2 LBK_EN 12
3 Yamnaya 9
4 Han 33
5 Eskimo 22
6 Mbuti 10
7 Karitiana 12
8 Ulchi 25
jackknife block size: 0.050
snps: 354212 indivs: 129
number of blocks for block jackknife: 710
dof (jackknife): 606.426
numsnps used: 351683
codimension 1
f4info:
f4rank: 2 dof: 2 chisq: 0.536 tail: 0.764859564 dofdiff: 4 chisqdiff: -0.536 taildiff: 1
B:
scale 1.000 1.000
Eskimo 1.021 0.540
Mbuti -0.990 1.738
Karitiana 1.387 0.831

anglesqueville
02-27-2017, 05:47 PM
Dubhthach: :beerchug::beerchug::beerchug::beerchug:

Dubhthach
02-27-2017, 08:01 PM
Just ran it on Fedora 25 there, was able to get it to build:



[[email protected] src]$ make install
mkdir -p /home/dubhthach/AdmixTools-master/src/admixlib
mkdir -p /home/dubhthach/AdmixTools-master/src/admixtables
mkdir -p /home/dubhthach/AdmixTools-master/src/admixinclude
mkdir -p /home/dubhthach/AdmixTools-master/src/../bin
cp *.h /home/dubhthach/AdmixTools-master/src/admixinclude
cp nicksrc/*.h /home/dubhthach/AdmixTools-master/src/admixinclude
ar -r libnick.a strsubs.o sortit.o vsubs.o statsubs.o linsubs.o getpars.o xsearch.o gauss.o gds.o
ranlib libnick.a
cp libnick.a /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o qp3Pop qp3Pop.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o qpDstat qpDstat.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o qpF4ratio qpF4ratio.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lopenblas -fopenmp qpAdm.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o f4rank.o eigsubs.o eigx.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a -Wl,-Bdynamic -lgsl -Wl,-Bstatic -lopenblas -Wl,-Bdynamic -lgfortran -lm -o qpAdm
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lopenblas -fopenmp qpWave.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o f4rank.o eigsubs.o eigx.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a -Wl,-Bdynamic -lgsl -Wl,-Bstatic -lopenblas -Wl,-Bdynamic -lgfortran -lm -o qpWave
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o rolloff rolloff.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o convertf convertf.o mcio.o admutils.o egsubs.o h2d.o exclude.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o dowtjack dowtjack.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o grabpars grabpars.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lm -o qpBound qpBound.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
gcc -I/home/dubhthach/AdmixTools-master/src/admixinclude -g -lgsl -lopenblas -lm -llapack -o qpGraph qpGraph.o gslqp.o qpgsubs.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/dubhthach/AdmixTools-master/src/admixlib/nicklib.a
mkdir -p ../bin
cp qp3Pop qpDstat qpF4ratio qpAdm qpWave rolloff convertf dowtjack expfit.sh grabpars qpBound qpGraph ../bin
cp rexpfit.r wtjack.pl ../bin



[[email protected] examples]$ uname -a
Linux lugh 4.9.11-200.fc25.x86_64 #1 SMP Mon Feb 20 18:11:59 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[[email protected] examples]$ cat /etc/redhat-release
Fedora release 25 (Twenty Five)


Installed the following to get it to work.



[[email protected] log]# tail -n 31 dnf.rpm.log
Feb 27 19:53:46 INFO --- logging initialized ---
Feb 27 19:53:57 INFO Installed: openblas-threads64-0.2.19-4.fc25.x86_64
Feb 27 19:53:57 INFO Installed: openblas-openmp64_-0.2.19-4.fc25.x86_64
Feb 27 19:53:58 INFO Installed: openblas-openmp-0.2.19-4.fc25.x86_64
Feb 27 19:53:59 INFO Installed: openblas-threads64_-0.2.19-4.fc25.x86_64
Feb 27 19:54:00 INFO Installed: openblas-serial64-0.2.19-4.fc25.x86_64
Feb 27 19:54:00 INFO Installed: openblas-serial64_-0.2.19-4.fc25.x86_64
Feb 27 19:54:01 INFO Installed: openblas-threads-0.2.19-4.fc25.x86_64
Feb 27 19:54:02 INFO Installed: openblas-openmp64-0.2.19-4.fc25.x86_64
Feb 27 19:54:02 INFO Installed: openblas-devel-0.2.19-4.fc25.x86_64
Feb 27 19:54:11 INFO Installed: openblas-static-0.2.19-4.fc25.x86_64
Feb 27 19:54:11 INFO Installed: openblas-Rblas-0.2.19-4.fc25.x86_64
Feb 27 19:54:26 INFO --- logging initialized ---
Feb 27 19:54:31 INFO --- logging initialized ---
Feb 27 19:54:36 INFO Installed: gsl-2.1-4.fc25.x86_64
Feb 27 19:54:56 INFO --- logging initialized ---
Feb 27 19:55:01 INFO Installed: perl-Thread-Queue-3.12-1.fc25.noarch
Feb 27 19:55:01 INFO Installed: autoconf-2.69-22.fc24.noarch
Feb 27 19:55:01 INFO Installed: automake-1.15-7.fc25.noarch
Feb 27 19:55:01 INFO Installed: gsl-devel-2.1-4.fc25.x86_64
Feb 27 19:55:26 INFO --- logging initialized ---
Feb 27 19:55:41 INFO --- logging initialized ---
Feb 27 19:55:44 INFO Installed: libquadmath-devel-6.3.1-1.fc25.x86_64
Feb 27 19:55:44 INFO Installed: libquadmath-static-6.3.1-1.fc25.x86_64
Feb 27 19:55:44 INFO Installed: libgfortran-static-6.3.1-1.fc25.x86_64
Feb 27 19:56:13 INFO --- logging initialized ---
Feb 27 19:56:18 INFO Installed: blas-3.6.1-2.fc25.x86_64
Feb 27 19:56:20 INFO Installed: lapack-3.6.1-2.fc25.x86_64
Feb 27 19:56:21 INFO Installed: gcc-gfortran-6.3.1-1.fc25.x86_64
Feb 27 19:56:21 INFO Installed: blas-devel-3.6.1-2.fc25.x86_64
Feb 27 19:56:21 INFO Installed: lapack-devel-3.6.1-2.fc25.x86_64



System uses GCC 6.3.1 -- full u pdates applied to Fedora 25 etc.

Generalissimo
02-28-2017, 12:21 AM
Ca you upload the tarball, I'd like to check it out.

anglesqueville
03-01-2017, 03:26 PM
Dubhthach, that's it! Thanks to you Admixtools is now installed on Fedora25! Huge kudos to you, I guess that the list of the packages you installed was an important parameter. And btw I've discovered that linux distribution, that I did'nt know. Sincere gratitude, really.

Dubhthach
03-01-2017, 04:08 PM
Dubhthach, that's it! Thanks to you Admixtools is now installed on Fedora25! Huge kudos to you, I guess that the list of the packages you installed was an important parameter. And btw I've discovered that linux distribution, that I did'nt know. Sincere gratitude, really.

key bit was lines like following when it came to compiler output error

/bin/ld: cannot find -llapack

In this case the linker (ld) couldn't find lapack library (-l<library name>) when I ran the compile a couple times I was getting different libraries failing. I probably installed more than I needed to get it working. I generally just did something along lines of "dnf install lpack* -y" etc.

Anyways Fedora is basically the community edition of Red Hat, the RHEL (Red Hat Enterprise Linux) releases are always based on a previous Fedora release. RHEL7 for example is mostly based off Fedora 19 (with some additions from Fedora 20). So if ye need to understand RedHat stack (or where they are going to be going in future) Fedora is always good place to start.

I should note that I'm probably been biased I've been using some form of Red Hat since circa 1999/2000 -- most of my work environment runs on RHEL.

anglesqueville
03-01-2017, 10:37 PM
Dubhtach... hem ( :embarrassed: ), when you'll have some time more to waste with those stories, could you try to compile EIGENSOFT ( https://github.com/DReichLab/EIG/releases/tag/v6.1.3 ), and especially mergeit .
edit: Don't waste your time. For some reason they have published a v6.1.4, with a complete bin folder, but not on github. I've not yet tried it, but it might work. Seemingly many people had many problems, trying to complile v6.1.3 ...

Dubhthach
03-02-2017, 05:01 PM
I tried it there on my rhel7 box (which I use to download updates for our RedHat 7 estate), system is fairly fully installed when it comes to packages, ran into various errors when I tried "git-head", 6.1.3, 6.1.2 and 6.1.1 -- I'll give it a shot later when I get home on my F25 setup.

anglesqueville
03-02-2017, 05:42 PM
Thanks. On F25 v6.1.4 works, at least mergeit ( the only bin I've tested so far)