Closed chartl closed 8 years ago
Hi chartl.
Try adding the .txt to the end of the yeast filename. At one point the code did require that the extension be removed but I believe the code was changed to allow it and it looks like the README wasn't updated.
I added a fix so that the code will no longer segfault, it will give you a message about the file not being found. And the README has updated.
Same issue:
$ rm -rf examples/Pearson && make clean && make && cd examples/ && mkdir Pearson && ../ccm yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt 10359 1535 rm -f ccm.o rmm.o ccm rmm gcc -m64 -c -g ccm.c gcc -m64 -c -g rmm.c gcc -m64 ccm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o ccm gcc -m64 rmm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o rmm Reading input file 'yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt'... Segmentation fault (core dumped)
And with full extension ('.txt.gz')
$ rm -rf examples/Pearson && make clean && make && cd examples/ && mkdir Pearson && ../ccm yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt.gz 10359 1535 rm -f ccm.o rmm.o ccm rmm gcc -m64 -c -g ccm.c gcc -m64 -c -g rmm.c gcc -m64 ccm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o ccm gcc -m64 rmm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o rmm Reading input file 'yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt.gz'... Error: EOF reached early. Exiting.
Update:
Unzipping did the trick
$ rm -rf examples/Pearson && make clean && make && cd examples/ && mkdir Pearson && ../ccm yeast.test.txt 10359 1535
rm -f ccm.o rmm.o ccm rmm gcc -m64 -c -g ccm.c gcc -m64 -c -g rmm.c gcc -m64 ccm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o ccm gcc -m64 rmm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o rmm Reading input file 'yeast.test.txt'... Calculating correlations... Writing file 1 of 2: ./Pearson/yeast.test.pc0.bin...
Oh, you'll have to uncompress the file first.
gunzip yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt.gz
Have you pull the code since my last reply? I t should have warned you that that file couldn't be opened when you tried it with just the .txt extension.
HI chartl. Did this resolve the issue for you? If so I'll close the issue. If not let me know and we can keep working on it.
We ran into the same issue. This produced a .pc0.bin and .pc1.bin, but then when we tried to run rmm -i yeast-s_cerevisiae1.global.RMA.nc-no-na-nh we had a segfault. We also had a segfault when we tried putting the .pc0.bin extension at the end of the file. It also segfaults with relative and full path.
Sorry, I'm from another group. We are using Ubuntu 15.10.
What OS did you test RMTGeneNet on?
I'm using Ubuntu 14.04. If you are using the example yeast file you can create the network in this way:
1) Change directories to the 'examples' directory 2) Run the ccm program: ../ccm yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt 10359 1535 3) Run the rmm program: ../rmm -i yeast-s_cerevisiae1.global.RMA.nc-no-na-nh -b 0.930000 4) Generate the network with the perl script: perl ../parse_pearson_bin.pl -b Pearson -t 0.831100 -p probest_ordo yeast-s_cerevisiae1.global
I updated the examples/README.txt to fix some typos that hopefully will help. I just ran the commands above and all worked well.
I tried that, and the first command didn't work. So, I thought it might be the way I edited the Makefile since I had a separate RMTGene folder. So I downloaded the RMTGeneNet-master and used the following Make File. While there was no yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt in the example folder this time, I just copied it from the old RMTGeneNet folder I kept in a separate directory. The command still didn't work even though ccm was now in the folder above the example. I will also post my commands so you can see. I'm thinking now it may have to do with my MKL. Where did you get yours? I have a free trial now, but only for a few more days, and it comes in a very expensive package.
MKLROOT = /opt/intel/mkl
CC = gcc -m64 EXE_DIR = /opt/RMTGeneNet
CCFLAGS = -g
LDFLAGS = -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm
OBJS = ccm.o rmm.o EXE = ccm rmm
all: ${OBJS} ${CC} ccm.o ${LDFLAGS} -o ccm ${CC} rmm.o ${LDFLAGS} -o rmm
ccm.o: ccm.c ${CC} -c ${CCFLAGS} ccm.c
rmm.o: rmm.c rmm.h ${CC} -c ${CCFLAGS} rmm.c
clean: rm -f ${OBJS} ${EXE}
install: all install -m 0755 ccm ${EXE_DIR} install -m 0755 rmm ${EXE_DIR} install -m 0755 parse_pearson_bin.pl ${EXE_DIR}
Here's what it says when I "make" and "make install"
vjw@Thermomics:/opt/RMTGeneNet-master$ sudo make gcc -m64 -c -g ccm.c gcc -m64 -c -g rmm.c gcc -m64 ccm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o ccm gcc -m64 rmm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o rmm vjw@Thermomics:/opt/RMTGeneNet-master$ sudo make install gcc -m64 ccm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o ccm gcc -m64 rmm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o rmm install -m 0755 ccm /opt/RMTGeneNet install -m 0755 rmm /opt/RMTGeneNet install -m 0755 parse_pearson_bin.pl /opt/RMTGeneNet vjw@Thermomics:/opt/RMTGeneNet-master$ ls ccm ccm.o INSTALL.txt Makefile README.txt rmm.c rmm.o ccm.c examples LICENSE.txt parse_pearson_bin.pl rmm rmm.h
vjw@Thermomics:/opt/RMTGeneNet-master$ cd examples vjw@Thermomics:/opt/RMTGeneNet-master/examples$ ls probest_order.txt README.txt samples.txt vjw@Thermomics:/opt/RMTGeneNet-master/examples$ cd README.txt bash: cd: README.txt: Not a directory vjw@Thermomics:/opt/RMTGeneNet-master/examples$ sudo cp ~/Downloads/RMTGeneNet/examples/yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt ./ vjw@Thermomics:/opt/RMTGeneNet-master/examples$ ../ccm yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt 10359 1535 Reading input file 'yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt'... Calculating correlations... Writing file 1 of 2: ./Pearson/yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.pc0.bin... Segmentation fault vjw@Thermomics:/opt/RMTGeneNet-master/examples$
Not sure why but README.txt is an executable in the folder. So is LICENSE.txt, INSTALL.txt, ccm.c, rmm.h, rmm.c, and parse_pearson_bin.pl.
Very strange. I'm not sure why you're getting a segfault. You have the most up-to-date code? Does it segfault almost immediately after it prints the message about writing file 1 of 2? Or, does it take a bit of time?
I just reran the example again and here's what I get:
../ccm yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt 10359 1535 Reading input file 'yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.txt'... Calculating correlations... Writing file 1 of 2: ./Pearson/yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.pc0.bin... Writing file 2 of 2: ./Pearson/yeast-s_cerevisiae1.global.RMA.nc-no-na-nh.pc1.bin... Done.
Thanks for the response, but I'm still having trouble. As much as I would like to, I may not be able to use this method given the time constraint.
Someone from our help desk helped me get further.
We tried the command below and got the following error. Any idea what's happening? strace ./rmm -i 2016-5-17_RMAnormSummary -b 0.930000
read(5, "\335d\343>\320$~>b\241\323\275$\332\343\275\17[:\276\204'i\276\307\320]=x*\365="..., 4096) = 3416 close(5) = 0 munmap(0x7f882e0e8000, 4096) = 0 mmap(NULL, 1196032, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f882dfa6000 write(1, " calculating eigenvalues for n "..., 62 calculating eigenvalues for n x n matrix of size n = 546... ) = 62 munmap(0x7f882dfa6000, 1196032) = 0 write(1, " testing similarity of NNSD wit"..., 45 testing similarity of NNSD with Poisson... ) = 45 write(2, "gsl: interp.c:38: ERROR: insuffi"..., 78gsl: interp.c:38: ERROR: insufficient number of points for interpolation type ) = 78 write(2, "Default GSL error handler invoke"..., 35Default GSL error handler invoked. ) = 35 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0 write(4, "Threshold\tChi-square\tCut Matrix "..., 37) = 37 tgkill(1816, 1816, SIGABRT) = 0 --- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=1816, si_uid=0} --- +++ killed by SIGABRT +++ Aborted
The most recent code changes in the development branch should resolve these issues. I'm marking this as closed. Please reopen if some problem still remains.
I'm running:
$ cat /proc/version Linux version 2.6.32-573.18.1.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) ) #1 SMP Tue Feb 9 22:46:17 UTC 2016
and from the base directory of the github clone I run:
$ rm -rf examples/Pearson && make clean && make && cd examples/ && mkdir Pearson && ../ccm yeast-s_cerevisiae1.global.RMA.nc-no-na-nh 10359 1535 rm -f ccm.o rmm.o ccm rmm gcc -m64 -c -g ccm.c gcc -m64 -c -g rmm.c gcc -m64 ccm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o ccm gcc -m64 rmm.o -g -Wall -lm -lgsl -lgslcblas -fopenmp -llapack -lblas -lpthread -lm -o rmm Reading input file 'yeast-s_cerevisiae1.global.RMA.nc-no-na-nh'... Segmentation fault