benedictpaten / pinchesAndCacti

Library for constructing pinch graphs and cactus graphs
MIT License
10 stars 4 forks source link

A Build Error #1

Closed iminkin closed 10 years ago

iminkin commented 10 years ago

Ubuntu 12.04.3 LTS, 64 bit, Python 2.7.3, just installed from scratch

The variable $PYTHONPATH is set to "/home/iminkin/Program:", folder structure: /home/iminkin/Program/sonLib /home/iminkin/Program/pinchesAndCacti

Trying to make all produces:

http://pastebin.com/imbM9jhs http://pastebin.com/wc716Hcx

Maybe the problem is that sonLib is not properly installed, but I'm not sure: https://github.com/benedictpaten/sonLib/issues/16

nick-youngblut commented 10 years ago

I'm getting the same errors as ilyaminkin. I have the same version of Ubuntu and python. I also can't seem to install tools in mafTools that require sonLib, but the install of sonLib appeared to complete correctly and I have sonLib in an adjacent directory as pinchesAndCacti and mafTools.

iminkin commented 10 years ago

nyoungb2, I would suggest you to install https://github.com/glennhickey/progressiveCactus, it contains all libs needed for mafTools. I was able to install it and run mafTools (except mafJoin).

dentearl commented 10 years ago

Confirmed and assigned to Benedict. Fresh checkout of sonLib and pinchesAndCacti won't build. Both projects in the same parent directory. 'make all' for sonLib works fine, 'make all' for pinchesAndCacti throws:

$ make
cd externalTools && make all
make[1]: Entering directory `/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools'
cd threeEdgeConnected && make all
make[2]: Entering directory `/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected'
gcc -std=c99 -O3 -g -Wall --pedantic -funroll-loops -lm -DNDEBUG   -I ../..//../sonLib/lib/ -c impl/*.c
impl/3_Absorb3edge2x.c: In function 'three_edge_connectP':
impl/3_Absorb3edge2x.c:391: warning: implicit declaration of function 'stIntTuple_construct1'
impl/3_Absorb3edge2x.c:391: warning: passing argument 2 of 'stList_append' makes pointer from integer without a cast
../..//../sonLib/lib/sonLibList.h:69: note: expected 'void *' but argument is of type 'int'
impl/3_Absorb3edge2x.c:398: warning: passing argument 2 of 'stList_append' makes pointer from integer without a cast
../..//../sonLib/lib/sonLibList.h:69: note: expected 'void *' but argument is of type 'int'
impl/3_Absorb3edge2x.c: In function 'computeThreeEdgeConnectedComponents':
impl/3_Absorb3edge2x.c:543: warning: implicit declaration of function 'stIntTuple_get'
impl/3_Absorb3edge2x.c:574: warning: passing argument 2 of 'stList_append' makes pointer from integer without a cast
../..//../sonLib/lib/sonLibList.h:69: note: expected 'void *' but argument is of type 'int'
impl/3_Absorb3edge2x.c:581: warning: passing argument 2 of 'stList_append' makes pointer from integer without a cast
../..//../sonLib/lib/sonLibList.h:69: note: expected 'void *' but argument is of type 'int'
ar rc 3EdgeConnected.a *.o
ranlib 3EdgeConnected.a 
rm *.o
mv 3EdgeConnected.a ../..//../sonLib/lib/
cp inc/*.h ../..//../sonLib/lib/
gcc -std=c99 -O3 -g -Wall --pedantic -funroll-loops -lm -DNDEBUG   -I inc -I../..//../sonLib/lib -o ../..//../sonLib/bin/3EdgeTests tests/*.c ../..//../sonLib/lib/3EdgeConnected.a ../..//../sonLib/lib/sonLib.a ../..//../sonLib/lib/cuTest.a -L/hive/groups/recon/local/lib -Wl,-rpath,/hive/groups/recon/local/lib -ltokyocabinet -lz -lbz2 -lpthread -lm -L/hive/groups/recon/local/lib -Wl,-rpath,/hive/groups/recon/local/lib -lkyototycoon -lkyotocabinet -lz -lbz2 -lpthread -lm -lstdc++  -L/usr/lib64 -lmysqlclient -lpthread -lm -lrt -ldl -lz -lm
tests/3_Absorb3edge2xTest.c: In function 'addEdgeToList':
tests/3_Absorb3edge2xTest.c:20: warning: implicit declaration of function 'stIntTuple_construct1'
tests/3_Absorb3edge2xTest.c:20: warning: passing argument 2 of 'stList_append' makes pointer from integer without a cast
../..//../sonLib/lib/sonLibList.h:69: note: expected 'void *' but argument is of type 'int'
/scratch/tmp//ccPVUgLW.o: In function `addEdgeToList':
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/tests/3_Absorb3edge2xTest.c:20: undefined reference to `stIntTuple_construct1'
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/tests/3_Absorb3edge2xTest.c:20: undefined reference to `stIntTuple_construct1'
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/tests/3_Absorb3edge2xTest.c:20: undefined reference to `stIntTuple_construct1'
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/tests/3_Absorb3edge2xTest.c:20: undefined reference to `stIntTuple_construct1'
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/tests/3_Absorb3edge2xTest.c:20: undefined reference to `stIntTuple_construct1'
/scratch/tmp//ccPVUgLW.o:/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/tests/3_Absorb3edge2xTest.c:20: more undefined references to `stIntTuple_construct1' follow
../..//../sonLib/lib/3EdgeConnected.a(3_Absorb3edge2x.o): In function `computeThreeEdgeConnectedComponents':
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/impl/3_Absorb3edge2x.c:543: undefined reference to `stIntTuple_get'
../..//../sonLib/lib/3EdgeConnected.a(3_Absorb3edge2x.o): In function `three_edge_connectP':
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/impl/3_Absorb3edge2x.c:391: undefined reference to `stIntTuple_construct1'
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/impl/3_Absorb3edge2x.c:398: undefined reference to `stIntTuple_construct1'
../..//../sonLib/lib/3EdgeConnected.a(3_Absorb3edge2x.o): In function `computeThreeEdgeConnectedComponents':
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/impl/3_Absorb3edge2x.c:574: undefined reference to `stIntTuple_construct1'
/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected/impl/3_Absorb3edge2x.c:581: undefined reference to `stIntTuple_construct1'
collect2: ld returned 1 exit status
make[2]: *** [../..//../sonLib/bin/3EdgeTests] Error 1
make[2]: Leaving directory `/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools/threeEdgeConnected'
make[1]: *** [all.threeEdgeConnected] Error 2
make[1]: Leaving directory `/cluster/home/dearl/temp_wednesday/pinchesAndCacti/externalTools'
make: *** [externalToolsM] Error 2
nick-youngblut commented 10 years ago

Thanks for the advice! It worked. Is the progressiveCactus aligner published or just the underlying algorithms? I have quite a few archaeal genomes to align (N>60; max variation: ~1% of genome length; genome length: 4-6Mb). Do you think progressiveCactus would work better than mugsy?

dentearl commented 10 years ago

progressiveCactus actually pulls the necessary dependencies and different branches. It looks like one of the team, when making changes to the development branch, accidentally pushed some changes in the master branch of sonLib and pinchesAndCacti, effectively breaking the master branches.

We'll have this fixed shortly and the master branches will go back to being stable, as you'd expect master branches to be.

On Wed, Oct 23, 2013 at 11:18 AM, nyoungb2 notifications@github.com wrote:

Thanks for the advice! It worked. Is the progressiveCactus aligner published or just the underlying algorithms? I have quite a few archaeal genomes to align (N>60; max variation: ~1% of genome length; genome length: 4-6Mb). Do you think progressiveCactus would work better than mugsy?

— Reply to this email directly or view it on GitHubhttps://github.com/benedictpaten/pinchesAndCacti/issues/1#issuecomment-26929851 .

iminkin commented 10 years ago

nyoungb2, I think that performance of Mugsy is good for very closely related genomes. In case of divergent genomes progressiveCactus could be better

benedictpaten commented 10 years ago

nyoungb2, I'm not sure we know which is better for closely related genomes, as they declined to enter the alignathon. I know pCactus will do a good job with closely related genomes, as we've done lots of testing for this case.

dentearl commented 10 years ago

Mugsy was in the Alignathon, but it was entered by Aaron Darling and he could only coax it into the Primate test, I don't think it could handle the other data sets (or Aaron didn't have the time to get it to work on them...)

On Friday, October 25, 2013, Benedict Paten wrote:

nyoungb2, I'm not sure we know which is better for closely related genomes, as they declined to enter the alignathon. I know pCactus will do a good job with closely related genomes, as we've done lots of testing for this case.

— Reply to this email directly or view it on GitHubhttps://github.com/benedictpaten/pinchesAndCacti/issues/1#issuecomment-27096237 .

dentearl commented 10 years ago

Corrected issue, please reopen if it persists.

dentearl commented 10 years ago

Sorry, Mugsy was also used for the Mammal simulation. It performed well (as did everything) for the Primate simulations but struggled with the Mammal simulation, presumably due to the larger evolutionary distances involved.

On Fri, Oct 25, 2013 at 7:35 AM, Dent Earl dent.earl@gmail.com wrote:

Mugsy was in the Alignathon, but it was entered by Aaron Darling and he could only coax it into the Primate test, I don't think it could handle the other data sets (or Aaron didn't have the time to get it to work on them...)

On Friday, October 25, 2013, Benedict Paten wrote:

nyoungb2, I'm not sure we know which is better for closely related genomes, as they declined to enter the alignathon. I know pCactus will do a good job with closely related genomes, as we've done lots of testing for this case.

— Reply to this email directly or view it on GitHubhttps://github.com/benedictpaten/pinchesAndCacti/issues/1#issuecomment-27096237 .