<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><span style="font-family: Courier;" class="">Package: ncbi-epcr</span><br class=""><div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class=""><font face="Courier" class="">Version: 2.3.12</font></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><span style="font-family: Courier;" class="">When I try to build the e-PCR program, </span><span style="font-family: Courier;" class="">a variety of errors occur.  The build command I use is</span><span style="font-family: Courier;" class="">:</span></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><font face="Courier" class="">make LF64LDFLAGS= LF64CCFLAGS=-DNATIVE_LARGEFILES</font></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><span style="font-family: Courier;" class="">I am using OSX Yosemite V10.10.3, with Xcode 5.02 and Xcode command line tools installed. </span></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><font face="Courier" class="">I was able to fix the errors with these code changes:</font></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><font face="Courier" class="">1. Uncomment '#include <sstream>' in mmap.cpp</font></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><font face="Courier" class="">2. Add these includes to epcr/minilcs.hpp:</font></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><font face="Courier" class="">#include <cstdlib></font></div><font face="Courier" class="">#include <sstream><br class=""><br class=""></font><div class=""><font face="Courier" class="">With these changes the build succeeds but several warnings are issued.  Some include a description of how these warnings can be eliminated with code changes (that seem like reasonable changes).  I was able to eliminate the warnings with this command line:</font></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><div class=""><font face="Courier" class="">make LF64LDFLAGS= LF64CCFLAGS=-DNATIVE_LARGEFILES</font><span style="font-family: Menlo; font-size: 11px;" class=""> </span><span style="font-family: Menlo; font-size: 11px;" class="">COMMON_CC_FLAGS=-w</span></div><div class=""><font face="Courier" class=""><br class=""></font></div></div><div class=""><font face="Courier" class="">I suggest that the above command line be included in the BUILD.html and BUILD.txt files under the OSX section.  The warnings are:</font></div><div class=""><font face="Courier" class=""><br class=""></font></div><div class=""><span style="font-family: Courier;" class="">stsfilter.cpp:47:49: warning: '&&' within '||' [-Wlogical-op-parentheses]</span></div><div class=""><font face="Courier" class="">    return (o1.pos2<o2.pos2 || o1.pos2==o2.pos2 && o1.pos1<o2.pos1);<br class="">                            ~~ ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~<br class="">stsfilter.cpp:47:49: note: place parentheses around the '&&' expression to silence this warning<br class=""><br class=""></font></div><div class=""><font face="Courier" class="">fahash_lookup.cpp:343:38: warning: '&&' within '||' [-Wlogical-op-parentheses]<br class="">                return sid < s.sid || sid == s.sid && pos < s.pos;<br class="">                                   ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~<br class="">fahash_lookup.cpp:343:38: note: place parentheses around the '&&' expression to silence this warning<br class=""><br class=""></font></div><div class=""><font face="Courier" class="">fahash_lookup.cpp:385:60: warning: '&&' within '||' [-Wlogical-op-parentheses]<br class="">                 ( gaps() < h.gaps() || gaps() == h.gaps() &&<br class="">                                     ~~ ~~~~~~~~~~~~~~~~~~~^~<br class="">fahash_lookup.cpp:385:60: note: place parentheses around the '&&' expression to silence this warning<br class="">                                                           ^<br class="">fahash_lookup.cpp:384:52: warning: '&&' within '||' [-Wlogical-op-parentheses]<br class="">                 ( pos2 < h.pos2 || pos2 == h.pos2 &&<br class="">                                 ~~ ~~~~~~~~~~~~~~~^~<br class="">fahash_lookup.cpp:384:52: note: place parentheses around the '&&' expression to silence this warning<br class="">                                                   ^<br class="">fahash_lookup.cpp:383:52: warning: '&&' within '||' [-Wlogical-op-parentheses]<br class="">            return pos1 < h.pos1 || pos1 == h.pos1 && <br class="">                                 ~~ ~~~~~~~~~~~~~~~^~<br class="">fahash_lookup.cpp:383:52: note: place parentheses around the '&&' expression to silence this warning<br class="">                                                   ^<br class="">fahash_lookup.cpp:435:54: warning: '&&' within '||' [-Wlogical-op-parentheses]<br class="">    return ( o1.pos2 < o2.pos2 || o1.pos2 == o2.pos2 && o1.pos1 < o2.pos1 );<br class="">                               ~~ ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~<br class="">fahash_lookup.cpp:435:54: note: place parentheses around the '&&' expression to silence this warning<br class=""><br class=""></font></div><div class=""><span style="font-family: Courier;" class="">fahash_main.cpp:257:9: warning: enumeration value 'eNone' not handled in switch [-Wswitch]</span></div><div class=""><font face="Courier" class="">        switch(command) {<br class="">               ^<br class=""><br class=""></font></div><div class=""><font face="Courier" class="">fahash_main.cpp:261:1: warning: control may reach end of non-void function [-Wreturn-type]<br class="">}<br class="">^<br class=""><br class=""></font></div><div class=""><font face="Courier" class="">re-PCR_main.cpp:345:9: warning: enumeration value 'eNone' not handled in switch [-Wswitch]<br class="">        switch(command) {<br class="">               ^<br class=""><br class=""></font></div><div class=""><font face="Courier" class="">re-PCR_main.cpp:349:1: warning: control may reach end of non-void function [-Wreturn-type]<br class="">}<br class="">^<br class=""><br class=""></font></div><div class=""><font face="Courier" class="">re-PCR_main.cpp:488:46: warning: format specifies type 'unsigned int' but the argument has type 'unsigned long' [-Wformat]<br class="">                            argv[i],fcount+1,fcount+stslist.size());<br class="">                                             ^~~~~~~~~~~~~~~~~~~~~<br class=""><br class=""></font></div><div class=""><font face="Courier" class="">re-PCR_main.cpp:502:38: warning: format specifies type 'unsigned int' but the argument has type 'unsigned long' [-Wformat]<br class="">                    argv[i],fcount+1,fcount+stslist.size());<br class="">                                     ^~~~~~~~~~~~~~~~~~~~~</font></div><div class=""><span style="font-family: Courier;" class=""><br class=""></span></div><div class=""><span style="font-family: Courier;" class=""><br class=""></span></div><div class=""><br class=""></div><div class=""><font face="Courier" class="">--<br class="">Ted Toal, Graduate Student, <a href="mailto:twtoal@ucdavis.edu" class="">twtoal@ucdavis.edu</a><br class="">Brady Lab, UC Davis, Life Sciences 2243<br class="">One Shields Ave., Davis, CA  95616, ph: (530) 752-2537<br class=""></font></div><div class=""><font face="Courier" class=""><br class=""></font></div></div></div></body></html>