From birte.kehr@fu-berlin.de Fri Jan 18 09:19:50 2013 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1Tw7Az-001zdI-AE>; Fri, 18 Jan 2013 09:19:49 +0100 Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1Tw7Ay-001Yz3-Lo>; Fri, 18 Jan 2013 09:19:48 +0100 Received: from p5b2986b6.dip.t-dialin.net ([91.41.134.182] helo=[192.168.2.101]) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1Tw7Ay-001i8h-Gj>; Fri, 18 Jan 2013 09:19:48 +0100 Message-ID: <50F905A1.20703@fu-berlin.de> Date: Fri, 18 Jan 2013 09:19:45 +0100 From: Birte Kehr User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: zhoutianliangwen , seqan-dev@lists.fu-berlin.de References: <201301181208334278475@genomics.org.cn> In-Reply-To: <201301181208334278475@genomics.org.cn> Content-Type: multipart/alternative; boundary="------------040407080800070303070108" X-Originating-IP: 91.41.134.182 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1358497189-00000B1F-0985D9F5/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.064586, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED,HTML_MESSAGE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Benin.ZEDAT.FU-Berlin.DE X-Spam-Level: Subject: Re: [Seqan-dev] Downloads | SeqAn library "seq_io.h" doesn't exists X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Jan 2013 08:19:50 -0000 This is a multi-part message in MIME format. --------------040407080800070303070108 Content-Type: text/plain; charset=GB2312 Content-Transfer-Encoding: 8bit Hi Zhoutian, this is correct. The seq_io module was added after we released version 1.3.1. I recommend to check out the current trunk version. Otherwise you will have to wait for the next release. Thanks for asking. Please use the mailing list for further questions. Birte Am 18.01.2013 05:08, schrieb zhoutianliangwen@genomics.org.cn: > Hello, > I'm a user for SeqAn Library. I download this version[Release 1.3.1] > from website http://www.seqan.de/downloads/?did=31. > When I unzipped this ball, I can't find library "seq_io.h" in released > ball. > So, is something wrong with my operation ? or something else ? > Appreciate your answer£¡Thank you£¡ > Dear zhoutian£¬ > Sincerely£¡ > ------------------------------------------------------------------------ --------------040407080800070303070108 Content-Type: text/html; charset=GB2312 Content-Transfer-Encoding: 8bit Hi Zhoutian,

this is correct. The seq_io module was added after we released version 1.3.1. I recommend to check out the current trunk version. Otherwise you will have to wait for the next release.

Thanks for asking. Please use the mailing list for further questions.

Birte

Am 18.01.2013 05:08, schrieb zhoutianliangwen@genomics.org.cn:
Hello,
I'm a user for SeqAn Library. I download this version[Release 1.3.1] from website http://www.seqan.de/downloads/?did=31.
When I unzipped this ball, I can't find library "seq_io.h" in released ball.
So, is something wrong with my operation ? or something else ?
Appreciate your answer£¡Thank you£¡
Dear zhoutian£¬
Sincerely£¡
 

 

--------------040407080800070303070108-- From theo@stillwater-sc.com Thu Jan 24 18:42:45 2013 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1TyQp2-002HL2-LW>; Thu, 24 Jan 2013 18:42:44 +0100 Received: from mail32c40.carrierzone.com ([209.235.156.172]) by relay1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1TyQp2-0024aB-BF>; Thu, 24 Jan 2013 18:42:44 +0100 X-Authenticated-User: theo.stillwater-sc.com Received: from [192.168.1.106] (173-162-153-241-NewEngland.hfc.comcastbusiness.net [173.162.153.241]) (authenticated bits=0) by mail32c40.carrierzone.com (8.13.6/8.13.1) with ESMTP id r0OHgdHR016903 for ; Thu, 24 Jan 2013 17:42:41 +0000 Message-ID: <5101728D.6000409@stillwater-sc.com> Date: Thu, 24 Jan 2013 12:42:37 -0500 From: Theodore Omtzigt Organization: Stillwater Supercomputing, Inc. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: seqan-dev@lists.fu-berlin.de X-Enigmail-Version: 1.5 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-CSC: 0 X-CHA: v=2.0 cv=c6Yct2Bl c=1 sm=1 a=4MqCJTanTeL1f/Xet1sSjg==:17 a=jl2ymW9NZSsA:10 a=Hf-sAbsWREgA:10 a=8nJEP1OIZ-IA:10 a=ek83P5UFAAAA:8 a=nnbV3itl1HUA:10 a=DrCcNq6E1o0-aQ_PvjIA:9 a=wPNLvfGTeEIA:10 a=4MqCJTanTeL1f/Xet1sSjg==:117 X-CTCH-RefID: str=0001.0A020209.51017291.00C9, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-Originating-IP: 209.235.156.172 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359049364-00000B1F-C0EEDD81/0-0/0-0 X-Bogosity: Unsure, tests=bogofilter, spamicity=0.500016, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=1.5 required=5.0 tests=FU_BOGO_UNSURE, RCVD_IN_DNSWL_NONE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Gabun.ZEDAT.FU-Berlin.DE X-Spam-Level: x Subject: [Seqan-dev] Trouble using SequenceStream X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Jan 2013 17:42:45 -0000 I am getting stuck on the simplest of tasks, reading an uncompressed fastq file. This statement: seqan::SequenceStream seqIO(argv[1]); returns a FILE_FORMAT_ERROR on a valid fastq text file. In sequence_stream.h in the function _checkFormat, checkStreamFormat returns false, // Guess file format, given the record reader. template SeqIOFileFormat_::Type _checkFormat(RecordReader & recordReader) { AutoSeqStreamFormat formatTag; if (!checkStreamFormat(recordReader, formatTag)) return SeqIOFileFormat_::FILE_FORMAT_ERROR; The recursion in checkStreamFormat in guess_stream_format.h is confusing me so I can't figure out what specific failure it is tripping over. I am trying to debug this but need some help deciphering the recursion architecture of the guessFormat code. How do I know it is a valid fastq file? The file provided has been a test file for non seqan code, and I have been able to use it in seqan with the FragmentStore without trouble. From manuel.holtgrewe@fu-berlin.de Thu Jan 24 19:21:37 2013 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1TyRQd-002KAa-9I>; Thu, 24 Jan 2013 19:21:35 +0100 Received: from relay2.zedat.fu-berlin.de ([130.133.4.80]) by outpost1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1TyRQd-002wtC-7L>; Thu, 24 Jan 2013 19:21:35 +0100 Received: from cas2.campus.fu-berlin.de ([130.133.170.202]) by relay2.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1TyRQc-001OZ6-Pl>; Thu, 24 Jan 2013 19:21:35 +0100 Received: from EX02B.campus.fu-berlin.de ([130.133.170.133]) by CAS2.campus.fu-berlin.de ([130.133.170.202]) with mapi id 14.02.0328.009; Thu, 24 Jan 2013 19:21:33 +0100 From: "Holtgrewe, Manuel" To: SeqAn Development Thread-Topic: [Seqan-dev] Trouble using SequenceStream Thread-Index: AQHN+lpB/4/oPhNHjUaTCo7elUwsG5hYynET Message-ID: References: <5101728D.6000409@stillwater-sc.com> In-Reply-To: <5101728D.6000409@stillwater-sc.com> Accept-Language: en-US, de-DE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Date: Thu, 24 Jan 2013 19:21:32 +0100 X-Original-Date: Thu, 24 Jan 2013 18:21:32 +0000 X-Originating-IP: 130.133.170.202 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359051695-00000B1F-D5918D55/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.004219, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED X-Spam-Checker-Version: SpamAssassin 3.3.2 on Botsuana.ZEDAT.FU-Berlin.DE X-Spam-Level: Subject: Re: [Seqan-dev] Trouble using SequenceStream X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Jan 2013 18:21:37 -0000 Hi Theo,=0A= =0A= I think this is related to a bug that was just fixed.=0A= =0A= Could you try to update your SeqAn SVN checkout and recompile your program?= =0A= =0A= HTH,=0A= Manuel=0A= ________________________________________=0A= From: Theodore Omtzigt [theo@stillwater-sc.com]=0A= Sent: Thursday, January 24, 2013 6:42 PM=0A= To: seqan-dev@lists.fu-berlin.de=0A= Subject: [Seqan-dev] Trouble using SequenceStream=0A= =0A= I am getting stuck on the simplest of tasks, reading an uncompressed=0A= fastq file. This statement:=0A= seqan::SequenceStream seqIO(argv[1]);=0A= =0A= returns a FILE_FORMAT_ERROR on a valid fastq text file. In=0A= sequence_stream.h in the function _checkFormat, checkStreamFormat=0A= returns false,=0A= =0A= // Guess file format, given the record reader.=0A= template =0A= SeqIOFileFormat_::Type _checkFormat(RecordReader &=0A= recordReader)=0A= {=0A= AutoSeqStreamFormat formatTag;=0A= if (!checkStreamFormat(recordReader, formatTag))=0A= return SeqIOFileFormat_::FILE_FORMAT_ERROR;=0A= =0A= The recursion in checkStreamFormat in guess_stream_format.h is confusing=0A= me so I can't figure out what specific failure it is tripping over. I am=0A= trying to debug this but need some help deciphering the recursion=0A= architecture of the guessFormat code.=0A= =0A= How do I know it is a valid fastq file? The file provided has been a=0A= test file for non seqan code, and I have been able to use it in seqan=0A= with the FragmentStore without trouble.=0A= =0A= =0A= _______________________________________________=0A= seqan-dev mailing list=0A= seqan-dev@lists.fu-berlin.de=0A= https://lists.fu-berlin.de/listinfo/seqan-dev=0A= From zhoutianliangwen@bgitechsolutions.com Fri Jan 25 01:43:45 2013 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1TyXOQ-002sRp-Fo>; Fri, 25 Jan 2013 01:43:42 +0100 Received: from mail.bgitechsolutions.com ([116.6.21.123] helo=mail.genomics.cn) by relay1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1TyXOP-0031wv-TI>; Fri, 25 Jan 2013 01:43:42 +0100 Received: from SZ4141 (172.16.12.14) by SZ-EX-02.genomics.cn (192.168.16.5) with Microsoft SMTP Server id 14.1.355.2; Fri, 25 Jan 2013 08:43:29 +0800 Date: Fri, 25 Jan 2013 08:43:29 +0800 From: "zhoutianliangwen@genomics.org.cn" To: SeqAn Development References: <5101728D.6000409@stillwater-sc.com> X-Priority: 3 X-GUID: CB15142D-CCC4-4AB7-BF60-07B43024DF1D X-Has-Attach: no X-Mailer: Foxmail 7.0.1.91[cn] MIME-Version: 1.0 Message-ID: <201301250843292819172@genomics.org.cn> Content-Type: multipart/alternative; boundary="----=_001_NextPart514852385875_=----" X-Originating-IP: 116.6.21.123 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359074622-00000B1F-36B1003C/0-0/0-0 X-Bogosity: Unsure, tests=bogofilter, spamicity=0.488586, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=1.5 required=5.0 tests=FU_BOGO_UNSURE,HTML_MESSAGE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Dschibuti.ZEDAT.FU-Berlin.DE X-Spam-Level: x Subject: Re: [Seqan-dev] Trouble using SequenceStream X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: zhoutianliangwen , SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Jan 2013 00:43:45 -0000 ------=_001_NextPart514852385875_=---- Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 c2VxYW46OlNlcXVlbmNlU3RyZWFtIHNlcUlPKGFyZ3ZbMV0pOw0KDQppZiggIWlzR29vZChzZXFJ TykgKQ0Kew0Kc3RkOjpjb3V0IDw8IiBmaWxlIHR5cGUgb3IgZm9ybWF0IGVycm9yIVxuIjsNCmV4 aXQoLTEpOw0KfQ0KUHJvZ3JhbSB3aWxsIGJlIHF1aXQgaWYgeW91ciBmaWxlIGZvcm1hdCBpcyB1 bnZhbGlkLiANCg0KDQoNCg0KDQoNCkZyb206IFRoZW9kb3JlIE9tdHppZ3QNCkRhdGU6IDIwMTMt MDEtMjUgMDE6NDINClRvOiBzZXFhbi1kZXZAbGlzdHMuZnUtYmVybGluLmRlDQpTdWJqZWN0OiBb U2VxYW4tZGV2XSBUcm91YmxlIHVzaW5nIFNlcXVlbmNlU3RyZWFtDQpJIGFtIGdldHRpbmcgc3R1 Y2sgb24gdGhlIHNpbXBsZXN0IG9mIHRhc2tzLCByZWFkaW5nIGFuIHVuY29tcHJlc3NlZA0KZmFz dHEgZmlsZS4gVGhpcyBzdGF0ZW1lbnQ6DQogICAgICAgICAgc2VxYW46OlNlcXVlbmNlU3RyZWFt IHNlcUlPKGFyZ3ZbMV0pOw0KDQpyZXR1cm5zIGEgRklMRV9GT1JNQVRfRVJST1Igb24gYSB2YWxp ZCBmYXN0cSB0ZXh0IGZpbGUuIEluDQpzZXF1ZW5jZV9zdHJlYW0uaCBpbiB0aGUgZnVuY3Rpb24g X2NoZWNrRm9ybWF0LCBjaGVja1N0cmVhbUZvcm1hdA0KcmV0dXJucyBmYWxzZSwNCg0KICAgIC8v IEd1ZXNzIGZpbGUgZm9ybWF0LCBnaXZlbiB0aGUgcmVjb3JkIHJlYWRlci4NCiAgICB0ZW1wbGF0 ZSA8dHlwZW5hbWUgVFN0cmVhbSwgdHlwZW5hbWUgVFNwZWM+DQogICAgU2VxSU9GaWxlRm9ybWF0 Xzo6VHlwZSBfY2hlY2tGb3JtYXQoUmVjb3JkUmVhZGVyPFRTdHJlYW0sIFRTcGVjPiAmDQpyZWNv cmRSZWFkZXIpDQogICAgew0KICAgICAgICBBdXRvU2VxU3RyZWFtRm9ybWF0IGZvcm1hdFRhZzsN CiAgICAgICAgaWYgKCFjaGVja1N0cmVhbUZvcm1hdChyZWNvcmRSZWFkZXIsIGZvcm1hdFRhZykp DQogICAgICAgICAgICByZXR1cm4gU2VxSU9GaWxlRm9ybWF0Xzo6RklMRV9GT1JNQVRfRVJST1I7 DQoNClRoZSByZWN1cnNpb24gaW4gY2hlY2tTdHJlYW1Gb3JtYXQgaW4gZ3Vlc3Nfc3RyZWFtX2Zv cm1hdC5oIGlzIGNvbmZ1c2luZw0KbWUgc28gSSBjYW4ndCBmaWd1cmUgb3V0IHdoYXQgc3BlY2lm aWMgZmFpbHVyZSBpdCBpcyB0cmlwcGluZyBvdmVyLiBJIGFtDQp0cnlpbmcgdG8gZGVidWcgdGhp cyBidXQgbmVlZCBzb21lIGhlbHAgZGVjaXBoZXJpbmcgdGhlIHJlY3Vyc2lvbg0KYXJjaGl0ZWN0 dXJlIG9mIHRoZSBndWVzc0Zvcm1hdCBjb2RlLg0KDQpIb3cgZG8gSSBrbm93IGl0IGlzIGEgdmFs aWQgZmFzdHEgZmlsZT8gVGhlIGZpbGUgcHJvdmlkZWQgaGFzIGJlZW4gYQ0KdGVzdCBmaWxlIGZv ciBub24gc2VxYW4gY29kZSwgYW5kIEkgaGF2ZSBiZWVuIGFibGUgdG8gdXNlIGl0IGluIHNlcWFu DQp3aXRoIHRoZSBGcmFnbWVudFN0b3JlIHdpdGhvdXQgdHJvdWJsZS4NCg0KDQpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0Kc2VxYW4tZGV2IG1haWxpbmcg bGlzdA0Kc2VxYW4tZGV2QGxpc3RzLmZ1LWJlcmxpbi5kZQ0KaHR0cHM6Ly9saXN0cy5mdS1iZXJs aW4uZGUvbGlzdGluZm8vc2VxYW4tZGV2 ------=_001_NextPart514852385875_=---- Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable
seqan::SequenceStream seqIO(argv[1]);
 
if( !isGood(seqIO) )
{
std::cout <<" file type or format=20 error!\n";
exit(-1);
}
Program will be quit if your file format is unvalid.
 

 
 
Date: 2013-01-25 01:42
To: seqan-dev@lists.fu-berlin.de<= /A>
Subject: [Seqan-dev] Trouble using=20 SequenceStream
I am getting stuck on the simplest = ;of tasks, reading an uncompressed
fastq file. This statement:
          seqan::Se= quenceStream seqIO(argv[1]);
 
returns a FILE_FORMAT_ERROR on a valid = fastq text file. In
sequence_stream.h in the function _checkFormat,&n= bsp;checkStreamFormat
returns false,
 
    // Guess file format, giv= en the record reader.
    template <typename TStream, = ;typename TSpec>
    SeqIOFileFormat_::Type _checkFormat(Reco= rdReader<TStream, TSpec> &
recordReader)
    {
        AutoSeqStreamFormat&n= bsp;formatTag;
        if (!checkStream= Format(recordReader, formatTag))
           &nb= sp;return SeqIOFileFormat_::FILE_FORMAT_ERROR;
 
The recursion in checkStreamFormat in guess_= stream_format.h is confusing
me so I can't figure out what spec= ific failure it is tripping over. I am<= /DIV>
trying to debug this but need some = ;help deciphering the recursion
architecture of the guessFormat code.
 
How do I know it is a valid f= astq file? The file provided has been a=
test file for non seqan code, and = I have been able to use it in seqa= n
with the FragmentStore without trouble.
 
 
_______________________________________________
seqan-dev mailing list
seqan-dev@lists.fu-berlin.de
https://lists.fu-berlin.de/listinfo/seqan-dev
------=_001_NextPart514852385875_=------ From theo@stillwater-sc.com Tue Jan 29 19:31:41 2013 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0Fy7-0021mO-Mf>; Tue, 29 Jan 2013 19:31:39 +0100 Received: from mail30c40.carrierzone.com ([209.235.156.170]) by relay1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0Fy7-002Cwl-Bs>; Tue, 29 Jan 2013 19:31:39 +0100 X-Authenticated-User: theo.stillwater-sc.com Received: from [192.168.1.106] (173-162-153-241-NewEngland.hfc.comcastbusiness.net [173.162.153.241]) (authenticated bits=0) by mail30c40.carrierzone.com (8.13.6/8.13.1) with ESMTP id r0TIVXxm024636 for ; Tue, 29 Jan 2013 18:31:35 +0000 Message-ID: <51081581.2060706@stillwater-sc.com> Date: Tue, 29 Jan 2013 13:31:29 -0500 From: Theodore Omtzigt Organization: Stillwater Supercomputing, Inc. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: SeqAn Dev List X-Enigmail-Version: 1.5 Content-Type: multipart/alternative; boundary="------------060503070801070402090803" X-CSC: 0 X-CHA: v=2.0 cv=C/JeP3z+ c=1 sm=1 a=4MqCJTanTeL1f/Xet1sSjg==:17 a=jl2ymW9NZSsA:10 a=lA_72dpCPOYA:10 a=Hf-sAbsWREgA:10 a=ek83P5UFAAAA:8 a=l9aU23RdOwUA:10 a=3a4a6rJtdHg2wrGJflYA:9 a=wPNLvfGTeEIA:10 a=wwjlo62VaJXd-tuUL58A:9 a=_W_S_7VecoQA:10 a=u-EscmhfSuQoCmH5:21 a=4MqCJTanTeL1f/Xet1sSjg==:117 X-CTCH-RefID: str=0001.0A020202.51081587.0121, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-Originating-IP: 209.235.156.170 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359484299-00000B1F-A1C2588F/0-0/0-0 X-Bogosity: Unsure, tests=bogofilter, spamicity=0.496426, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=1.5 required=5.0 tests=FU_BOGO_UNSURE,HTML_MESSAGE, RCVD_IN_DNSWL_NONE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Benin.ZEDAT.FU-Berlin.DE X-Spam-Level: x Subject: [Seqan-dev] Zlib linking errors under 64bit Windows 7 X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Jan 2013 18:31:41 -0000 This is a multi-part message in MIME format. --------------060503070801070402090803 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit I am not having much luck getting unstuck on a zlib linking error to unlock the goodness of SequenceStream on gz compressed files. In short, I cannot get the right zlib symbols between seqan calling and zlib binding: 1>------ Build started: Project: count_kmers, Configuration: Release Win32 ------ 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzclose referenced in function "void __cdecl seqan::close(class seqan::Stream > &)" (?close@seqan@@YAXAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzeof referenced in function "bool __cdecl seqan::streamEof(class seqan::Stream > &)" (?streamEof@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzerror referenced in function "int __cdecl seqan::streamError(class seqan::Stream > &)" (?streamError@seqan@@YAHAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzread referenced in function "unsigned int __cdecl seqan::streamReadBlock(char *,class seqan::Stream > &,unsigned int)" (?streamReadBlock@seqan@@YAIPADAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@I@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzopen referenced in function "bool __cdecl seqan::open(class seqan::Stream > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzdopen referenced in function "bool __cdecl seqan::open(class seqan::Stream > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z) 1>D:\Build\vs10\bioinformatics\apps\Stillwater-bio\seqan\apps\count_kmers\Release\count_kmers.exe : fatal error LNK1120: 6 unresolved externals When I DUMPBIN the symbols in zlib.lib in C:\seqan-contrib-D20111031-x64\vs10\lib, the error can be explained as the above mentioned symbols are not in the library file. Instead they are the gzopen/gzeof/gzerror/gzclose variants. I went back to built zlib on my system so that I could generate very specific zlib versions, and the variety that does produce the _gz### versions is the multi-threaded DLL C++ run-time version. However, the experiment where I link directly with this version of the library STILL produces the same errors, so I now thinking that it has to do with not having the right defines to specialize the zlib API. Has anyone successfully solved this problem on Windows? Looking forward to a solution. --------------060503070801070402090803 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit I am not having much luck getting unstuck on a zlib linking error to unlock the goodness of SequenceStream on gz compressed files. In short, I cannot get the right zlib symbols between seqan calling and zlib binding:

1>------ Build started: Project: count_kmers, Configuration: Release Win32 ------
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzclose referenced in function "void __cdecl seqan::close(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &)" (?close@seqan@@YAXAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzeof referenced in function "bool __cdecl seqan::streamEof(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &)" (?streamEof@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzerror referenced in function "int __cdecl seqan::streamError(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &)" (?streamError@seqan@@YAHAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzread referenced in function "unsigned int __cdecl seqan::streamReadBlock(char *,class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &,unsigned int)" (?streamReadBlock@seqan@@YAIPADAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@I@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzopen referenced in function "bool __cdecl seqan::open(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzdopen referenced in function "bool __cdecl seqan::open(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z)
1>D:\Build\vs10\bioinformatics\apps\Stillwater-bio\seqan\apps\count_kmers\Release\count_kmers.exe : fatal error LNK1120: 6 unresolved externals


When I DUMPBIN the symbols in zlib.lib in C:\seqan-contrib-D20111031-x64\vs10\lib, the error can be explained as the above mentioned symbols are not in the library file. Instead they are the gzopen/gzeof/gzerror/gzclose variants.

I went back to built zlib on my system so that I could generate very specific zlib versions, and the variety that does produce the _gz### versions is the multi-threaded DLL C++ run-time version. However, the experiment where I link directly with this version of the library STILL produces the same errors, so I now thinking that it has to do with not having the right defines to specialize the zlib API. Has anyone successfully solved this problem on Windows?

Looking forward to a solution.
--------------060503070801070402090803-- From theo@stillwater-sc.com Wed Jan 30 01:32:11 2013 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0Laz-002Iys-Uz>; Wed, 30 Jan 2013 01:32:10 +0100 Received: from mail32c40.carrierzone.com ([209.235.156.172]) by relay1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0Laz-002ww4-K4>; Wed, 30 Jan 2013 01:32:09 +0100 X-Authenticated-User: theo.stillwater-sc.com Received: from [192.168.1.106] (173-162-153-241-NewEngland.hfc.comcastbusiness.net [173.162.153.241]) (authenticated bits=0) by mail32c40.carrierzone.com (8.13.6/8.13.1) with ESMTP id r0U0W38T010247 for ; Wed, 30 Jan 2013 00:32:05 +0000 Message-ID: <510869FE.20306@stillwater-sc.com> Date: Tue, 29 Jan 2013 19:31:58 -0500 From: Theodore Omtzigt Organization: Stillwater Supercomputing, Inc. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: SeqAn Dev List X-Enigmail-Version: 1.5 Content-Type: multipart/alternative; boundary="------------010200040000000908030000" X-CSC: 0 X-CHA: v=2.0 cv=c6Yct2Bl c=1 sm=1 a=4MqCJTanTeL1f/Xet1sSjg==:17 a=jl2ymW9NZSsA:10 a=hXJagS-7mK0A:10 a=Hf-sAbsWREgA:10 a=ek83P5UFAAAA:8 a=JZ6sH3ozGhoA:10 a=cDhkcBx7isoamxmotqQA:9 a=wPNLvfGTeEIA:10 a=lRjsEA-t5ePt1pRA-K0A:9 a=_W_S_7VecoQA:10 a=d2VKPHgPA7rTpScy:21 a=4MqCJTanTeL1f/Xet1sSjg==:117 X-CTCH-RefID: str=0001.0A020206.51086A05.006A, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-Originating-IP: 209.235.156.172 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359505929-00000B1F-0D707C1D/0-0/0-0 X-Bogosity: Unsure, tests=bogofilter, spamicity=0.499999, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=1.5 required=5.0 tests=FU_BOGO_UNSURE,HTML_MESSAGE, RCVD_IN_DNSWL_NONE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Algerien.ZEDAT.FU-Berlin.DE X-Spam-Level: x Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Jan 2013 00:32:11 -0000 This is a multi-part message in MIME format. --------------010200040000000908030000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit I have got the linking to work outside of the SeqAn CMake build environment, so I have now at least isolated it to be a problem in the SeqAn build environment. However, I also run into a format error on a fastq file that is passing with the standard code from Genome Research Lab (kseq.h). The problem occurs in the last test in this code fragment from read_fasta_fastq.h template inline int _readQualityBlock(TQualString & qual, RecordReader & reader, unsigned const seqLength, TIdString const & meta, Fastq const & /*tag*/) { // READ AND CHECK QUALITIES' META if (atEnd(reader)) return EOF_BEFORE_SUCCESS; if (value(reader) != '+') return RecordReader::INVALID_FORMAT; goNext(reader); if (resultCode(reader)) return resultCode(reader); if (atEnd(reader)) // empty ID, no sequence, this is legal? TODO return 0; CharString qualmeta_buffer; int res = readLine(qualmeta_buffer, reader); if (res && res == EOF_BEFORE_SUCCESS) return EOF_BEFORE_SUCCESS; else if (res) return RecordReader::INVALID_FORMAT; // meta string has to be empty or identical to sequence's meta if ((qualmeta_buffer != "") && (qualmeta_buffer != meta)) return RecordReader::INVALID_FORMAT; ... and the test fails because of the qualmeta_buffer not being equal to meta. + meta {data_begin=0x001757e0 "EAS18:1:1:1:1:1119:0/1ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««" data_end=0x001757f6 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««" data_capacity=32 } const seqan::String > & + qualmeta_buffer {data_begin=0x0017dc40 "EAS18:1:1:1:1:1119:0/1 ltrim=1 rtrim=38ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««þîþîþîþ" data_end=0x0017dc67 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««þîþîþîþ" data_capacity=49 } seqan::String > that section: " ltrim=1 rtrim=38" appears to be a format difference that kseq.h accepts as a valid quality segment, but read_fasta_fastq.h does not. So, this question now has bifurcated into a second question and that is what is considered a valid fastq format? --------------010200040000000908030000 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit I have got the linking to work outside of the SeqAn CMake build environment, so I have now at least isolated it to be a problem in the SeqAn build environment.

However, I also run into a format error on a fastq file that is passing with the standard code from Genome Research Lab (kseq.h).

The problem occurs in the last test in this code fragment from read_fasta_fastq.h
template <typename TIdString,
          typename TQualString,
          typename TFile,
          typename TPass>
inline int
_readQualityBlock(TQualString & qual,
                  RecordReader<TFile, TPass > & reader,
                  unsigned const seqLength,
                  TIdString const & meta,
                  Fastq const & /*tag*/)
{
    // READ AND CHECK QUALITIES' META
    if (atEnd(reader))
        return EOF_BEFORE_SUCCESS;
    if (value(reader) != '+')
        return RecordReader<TFile, TPass >::INVALID_FORMAT;
    goNext(reader);
    if (resultCode(reader))
        return resultCode(reader);
    if (atEnd(reader)) // empty ID, no sequence, this is legal? TODO
        return 0;

    CharString qualmeta_buffer;
    int res = readLine(qualmeta_buffer, reader);
    if (res && res == EOF_BEFORE_SUCCESS)
        return EOF_BEFORE_SUCCESS;
    else if (res)
        return RecordReader<TFile, TPass >::INVALID_FORMAT;

    // meta string has to be empty or identical to sequence's meta
    if ((qualmeta_buffer != "") && (qualmeta_buffer != meta))
        return RecordReader<TFile, TPass >::INVALID_FORMAT;
...

and the test fails because of the qualmeta_buffer not being equal to meta.
+    meta    {data_begin=0x001757e0 "EAS18:1:1:1:1:1119:0/1ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««" data_end=0x001757f6 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««" data_capacity=32 }    const seqan::String<char,seqan::Alloc<void> > &
+    qualmeta_buffer    {data_begin=0x0017dc40 "EAS18:1:1:1:1:1119:0/1 ltrim=1 rtrim=38ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««þîþîþîþ" data_end=0x0017dc67 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý««««««««þîþîþîþ" data_capacity=49 }    seqan::String<char,seqan::Alloc<void> >

that section: " ltrim=1 rtrim=38" appears to be a format difference that kseq.h accepts as a valid quality segment, but read_fasta_fastq.h does not.

So, this question now has bifurcated into a second question and that is what is considered a valid fastq format?





--------------010200040000000908030000-- From manuel.holtgrewe@fu-berlin.de Wed Jan 30 10:06:53 2013 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0Td5-002iWj-GO>; Wed, 30 Jan 2013 10:06:51 +0100 Received: from relay2.zedat.fu-berlin.de ([130.133.4.80]) by outpost1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0Td5-001tl4-DX>; Wed, 30 Jan 2013 10:06:51 +0100 Received: from cas3.campus.fu-berlin.de ([130.133.170.203]) by relay2.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0Td5-002hh7-17>; Wed, 30 Jan 2013 10:06:51 +0100 Received: from EX02B.campus.fu-berlin.de ([130.133.170.133]) by CAS3.campus.fu-berlin.de ([130.133.170.203]) with mapi id 14.02.0328.009; Wed, 30 Jan 2013 10:06:50 +0100 From: "Holtgrewe, Manuel" To: SeqAn Development Thread-Topic: [Seqan-dev] Zlib linking errors under 64bit Windows 7 Thread-Index: AQHN/k7uX72hyko63kuqSv9dzQMiIphhlEBT Message-ID: References: <51081581.2060706@stillwater-sc.com> In-Reply-To: <51081581.2060706@stillwater-sc.com> Accept-Language: en-US, de-DE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Content-Type: multipart/alternative; boundary="_000_FCCAB9D80C3DAB47B5601C5B0E62872B2943507Fex02bcampusfube_" MIME-Version: 1.0 Date: Wed, 30 Jan 2013 10:06:49 +0100 X-Original-Date: Wed, 30 Jan 2013 09:06:49 +0000 X-Originating-IP: 130.133.170.203 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359536811-00000B1F-E29304F0/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED,HTML_MESSAGE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Burundi.ZEDAT.FU-Berlin.DE X-Spam-Level: Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Jan 2013 09:06:53 -0000 --_000_FCCAB9D80C3DAB47B5601C5B0E62872B2943507Fex02bcampusfube_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi Theo, Can you send me the linker command? There are two possible sources of problems that I can see: (1) The contribs are not picked up correctly and zlib is not linked in corr= ectly. (2) You are trying to link a 32 bit program (indicated by Win32) against th= e 64 bit library (indicated by the path C:\...-x64). My guess is that (2) is the problem but I could be wrong. To generate build= files for 64 bit windows in CMake, use the Generator "Visual Studio XX Win= 64", i.e. the Win64 variant is important. Linking on Windows was pretty painful in my opinion. I could not get correc= tly redistributeable DLLs (you still need some library file for the linking= apparently) so we redistribute object files for static linking. Note that = at least for static libraries, you need to link debug builds against debug-= built libraries. The SeqAn build system currently takes care of this. I wish this was easier but I could not find a better way or anyone who coul= d tell me about a better way. Cheers, Manuel ________________________________ From: Theodore Omtzigt [theo@stillwater-sc.com] Sent: Tuesday, January 29, 2013 7:31 PM To: SeqAn Dev List Subject: [Seqan-dev] Zlib linking errors under 64bit Windows 7 I am not having much luck getting unstuck on a zlib linking error to unlock= the goodness of SequenceStream on gz compressed files. In short, I cannot = get the right zlib symbols between seqan calling and zlib binding: 1>------ Build started: Project: count_kmers, Configuration: Release Win32 = ------ 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzclose refe= renced in function "void __cdecl seqan::close(class seqan::Stream > &)" (?close@seqan@@YAXAAV?$Stream@U?$Tag@= UGZFile_@seqan@@@seqan@@@1@@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzeof refere= nced in function "bool __cdecl seqan::streamEof(class seqan::Stream > &)" (?streamEof@seqan@@YA_NAAV?$Stream@= U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzerror refe= renced in function "int __cdecl seqan::streamError(class seqan::Stream > &)" (?streamError@seqan@@YAHAAV?$Str= eam@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzread refer= enced in function "unsigned int __cdecl seqan::streamReadBlock(char *,class= seqan::Stream > &,unsigned int)" = (?streamReadBlock@seqan@@YAIPADAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@= 1@I@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzopen refer= enced in function "bool __cdecl seqan::open(class seqan::Stream > &,char const *,char const *)" (?open@seqan@= @YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z) 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzdopen refe= renced in function "bool __cdecl seqan::open(class seqan::Stream > &,char const *,char const *)" (?open@seqan= @@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z) 1>D:\Build\vs10\bioinformatics\apps\Stillwater-bio\seqan\apps\count_kmers\R= elease\count_kmers.exe : fatal error LNK1120: 6 unresolved externals When I DUMPBIN the symbols in zlib.lib in C:\seqan-contrib-D20111031-x64\vs= 10\lib, the error can be explained as the above mentioned symbols are not i= n the library file. Instead they are the gzopen/gzeof/gzerror/gzclose varia= nts. I went back to built zlib on my system so that I could generate very specif= ic zlib versions, and the variety that does produce the _gz### versions is = the multi-threaded DLL C++ run-time version. However, the experiment where = I link directly with this version of the library STILL produces the same er= rors, so I now thinking that it has to do with not having the right defines= to specialize the zlib API. Has anyone successfully solved this problem on= Windows? Looking forward to a solution. --_000_FCCAB9D80C3DAB47B5601C5B0E62872B2943507Fex02bcampusfube_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi Theo,

Can you send me the linker command?

There are two possible sources of problems that I can see:

(1) The contribs are not picked up correctly and zlib is not linked in= correctly.
(2) You are trying to link a 32 bit program (indicated by Win32) again= st the 64 bit library (indicated by the path C:\...-x64).

My guess is that (2) is the problem but I could be wrong. To generate = build files for 64 bit windows in CMake, use the Generator "Visual Stu= dio XX Win64", i.e. the Win64 variant is important.

Linking on Windows was pretty painful in my opinion. I could not get c= orrectly redistributeable DLLs (you still need some library file for the li= nking apparently) so we redistribute object files for static linking. Note = that at least for static libraries, you need to link debug builds against debug-built libraries. The SeqAn bui= ld system currently takes care of this.

I wish this was easier but I could not find a better way or anyone who= could tell me about a better way.

Cheers,
Manuel

From: Theodore Omtzigt [theo@stillwater-s= c.com]
Sent: Tuesday, January 29, 2013 7:31 PM
To: SeqAn Dev List
Subject: [Seqan-dev] Zlib linking errors under 64bit Windows 7

I am not having much luck getting unstuck on a zlib linking error to u= nlock the goodness of SequenceStream on gz compressed files. In short, I ca= nnot get the right zlib symbols between seqan calling and zlib binding:

1>------ Build started: Project: count_kmers, Configuration: Release Win= 32 ------
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzclose r= eferenced in function "void __cdecl seqan::close(class seqan::Stream&l= t;struct seqan::Tag<struct seqan::GZFile_> > &)" (?close@= seqan@@YAXAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzeof ref= erenced in function "bool __cdecl seqan::streamEof(class seqan::Stream= <struct seqan::Tag<struct seqan::GZFile_> > &)" (?stre= amEof@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzerror r= eferenced in function "int __cdecl seqan::streamError(class seqan::Str= eam<struct seqan::Tag<struct seqan::GZFile_> > &)" (?s= treamError@seqan@@YAHAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzread re= ferenced in function "unsigned int __cdecl seqan::streamReadBlock(char= *,class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> &g= t; &,unsigned int)" (?streamReadBlock@seqan@@YAIPADAAV?$Stream@U?$= Tag@UGZFile_@seqan@@@seqan@@@1@I@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzopen re= ferenced in function "bool __cdecl seqan::open(class seqan::Stream<= struct seqan::Tag<struct seqan::GZFile_> > &,char const *,char= const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan= @@@1@PBD1@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzdopen r= eferenced in function "bool __cdecl seqan::open(class seqan::Stream<= ;struct seqan::Tag<struct seqan::GZFile_> > &,char const *,cha= r const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqa= n@@@1@PBD1@Z)
1>D:\Build\vs10\bioinformatics\apps\Stillwater-bio\seqan\apps\count_kmer= s\Release\count_kmers.exe : fatal error LNK1120: 6 unresolved externals

When I DUMPBIN the symbols in zlib.lib in C:\seqan-contrib-D20111031-x64\vs= 10\lib, the error can be explained as the above mentioned symbols are not i= n the library file. Instead they are the gzopen/gzeof/gzerror/gzclose varia= nts.

I went back to built zlib on my system so that I could generate very specif= ic zlib versions, and the variety that does produce the _gz### versions is = the multi-threaded DLL C++ run-time version. However, the experimen= t where I link directly with this version of the library STILL produces the same errors, so I now thinking that it h= as to do with not having the right defines to specialize the zlib API. Has = anyone successfully solved this problem on Windows?

Looking forward to a solution.
--_000_FCCAB9D80C3DAB47B5601C5B0E62872B2943507Fex02bcampusfube_-- From manuel.holtgrewe@fu-berlin.de Wed Jan 30 10:14:34 2013 Received: from outpost1.zedat.fu-berlin.de ([130.133.4.66]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0TkW-002j2Y-QE>; Wed, 30 Jan 2013 10:14:32 +0100 Received: from relay2.zedat.fu-berlin.de ([130.133.4.80]) by outpost1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0TkW-001vy0-NT>; Wed, 30 Jan 2013 10:14:32 +0100 Received: from cas2.campus.fu-berlin.de ([130.133.170.202]) by relay2.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0TkW-002ir3-Dw>; Wed, 30 Jan 2013 10:14:32 +0100 Received: from EX02B.campus.fu-berlin.de ([130.133.170.133]) by CAS2.campus.fu-berlin.de ([130.133.170.202]) with mapi id 14.02.0328.009; Wed, 30 Jan 2013 10:14:31 +0100 From: "Holtgrewe, Manuel" To: SeqAn Development Thread-Topic: [Seqan-dev] Zlib linking errors under 64bit Windows 7 Thread-Index: AQHN/oE2X72hyko63kuqSv9dzQMiIphhlXD8 Message-ID: References: <510869FE.20306@stillwater-sc.com> In-Reply-To: <510869FE.20306@stillwater-sc.com> Accept-Language: en-US, de-DE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Content-Type: multipart/alternative; boundary="_000_FCCAB9D80C3DAB47B5601C5B0E62872B29435096ex02bcampusfube_" MIME-Version: 1.0 Date: Wed, 30 Jan 2013 10:14:31 +0100 X-Original-Date: Wed, 30 Jan 2013 09:14:31 +0000 X-Originating-IP: 130.133.170.202 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359537272-00000B1F-0DD2B7F4/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.001016, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED,HTML_MESSAGE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Gabun.ZEDAT.FU-Berlin.DE X-Spam-Level: Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Jan 2013 09:14:34 -0000 --_000_FCCAB9D80C3DAB47B5601C5B0E62872B29435096ex02bcampusfube_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi Theo, The FASTQ format is a good example for the file format fuzziness in bioinfo= rmatics. There is no real standard, only an article [1] telling what is the= re. The supplemental material is a tar.gz file that contains an example whi= ch says different ids for sequence and quality meta are an error. That said, what is the source of the FASTQ file? Ignoring the quality meta = would not be a big change in the parser and be a change that I would be qui= te willing to make given that a "major" source of FASTQ generates such file= s. In a future version, such things should be configurable when reading FASTQ = but alas we do not currently have time to make the change to make the I/O o= f sequences more configurable. HTH, Manuel [1] http://nar.oxfordjournals.org/content/38/6/1767 ________________________________ From: Theodore Omtzigt [theo@stillwater-sc.com] Sent: Wednesday, January 30, 2013 1:31 AM To: SeqAn Dev List Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 I have got the linking to work outside of the SeqAn CMake build environment= , so I have now at least isolated it to be a problem in the SeqAn build env= ironment. However, I also run into a format error on a fastq file that is passing wit= h the standard code from Genome Research Lab (kseq.h). The problem occurs in the last test in this code fragment from read_fasta_f= astq.h template inline int _readQualityBlock(TQualString & qual, RecordReader & reader, unsigned const seqLength, TIdString const & meta, Fastq const & /*tag*/) { // READ AND CHECK QUALITIES' META if (atEnd(reader)) return EOF_BEFORE_SUCCESS; if (value(reader) !=3D '+') return RecordReader::INVALID_FORMAT; goNext(reader); if (resultCode(reader)) return resultCode(reader); if (atEnd(reader)) // empty ID, no sequence, this is legal? TODO return 0; CharString qualmeta_buffer; int res =3D readLine(qualmeta_buffer, reader); if (res && res =3D=3D EOF_BEFORE_SUCCESS) return EOF_BEFORE_SUCCESS; else if (res) return RecordReader::INVALID_FORMAT; // meta string has to be empty or identical to sequence's meta if ((qualmeta_buffer !=3D "") && (qualmeta_buffer !=3D meta)) return RecordReader::INVALID_FORMAT; ... and the test fails because of the qualmeta_buffer not being equal to meta. + meta {data_begin=3D0x001757e0 "EAS18:1:1:1:1:1119:0/1=CD=CD=CD=CD= =CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=FD=FD=FD=FD=AB=AB=AB=AB=AB=AB=AB=AB" data_en= d=3D0x001757f6 "=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=FD=FD=FD=FD=AB= =AB=AB=AB=AB=AB=AB=AB" data_capacity=3D32 } const seqan::String > & + qualmeta_buffer {data_begin=3D0x0017dc40 "EAS18:1:1:1:1:1119:0/1 lt= rim=3D1 rtrim=3D38=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=FD=FD=FD=FD=AB= =AB=AB=AB=AB=AB=AB=AB=FE=EE=FE=EE=FE=EE=FE" data_end=3D0x0017dc67 "=CD=CD= =CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=FD=FD=FD=FD=AB=AB=AB=AB=AB=AB=AB=AB=FE= =EE=FE=EE=FE=EE=FE" data_capacity=3D49 } seqan::String > that section: " ltrim=3D1 rtrim=3D38" appears to be a format difference tha= t kseq.h accepts as a valid quality segment, but read_fasta_fastq.h does no= t. So, this question now has bifurcated into a second question and that is wha= t is considered a valid fastq format? --_000_FCCAB9D80C3DAB47B5601C5B0E62872B29435096ex02bcampusfube_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi Theo,

The FASTQ format is a good example for the file format fuzziness in bi= oinformatics. There is no real standard, only an article [1] telling what i= s there. The supplemental material is a tar.gz file that contains an exampl= e which says different ids for sequence and quality meta are an error.

That said, what is the source of the FASTQ file? Ignoring the quality = meta would not be a big change in the parser and be a change that I would b= e quite willing to make given that a "major" source of FASTQ gene= rates such files.

In a future version, such things should be configurable when reading F= ASTQ but alas we do not currently have time to make the change to make the = I/O of sequences more configurable.

HTH,
Manuel


From: Theodore Omtzigt [theo@stillwater-s= c.com]
Sent: Wednesday, January 30, 2013 1:31 AM
To: SeqAn Dev List
Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7

I have got the linking to work outside of the SeqAn CMake build enviro= nment, so I have now at least isolated it to be a problem in the SeqAn buil= d environment.

However, I also run into a format error on a fastq file that is passing wit= h the standard code from Genome Research Lab (kseq.h).

The problem occurs in the last test in this code fragment from read_fasta_f= astq.h
template <typename TIdStr= ing,
          typename TQualString= ,
          typename TFile,
          typename TPass> inline int
_readQualityBlock(TQualString & qual,
            &nb= sp;     RecordReader<TFile, TPass > & reader,=
            &nb= sp;     unsigned const seqLength,
            &nb= sp;     TIdString const & meta,
            &nb= sp;     Fastq const & /*tag*/)
{
    // READ AND CHECK QUALITIES' META
    if (atEnd(reader))
        return EOF_BEFORE_SUCCESS;
    if (value(reader) !=3D '+')
        return RecordReader<TFile, TP= ass >::INVALID_FORMAT;
    goNext(reader);
    if (resultCode(reader))
        return resultCode(reader);
    if (atEnd(reader)) // empty ID, no sequence, this is leg= al? TODO
        return 0;

    CharString qualmeta_buffer;
    int res =3D readLine(qualmeta_buffer, reader);
    if (res && res =3D=3D EOF_BEFORE_SUCCESS)
        return EOF_BEFORE_SUCCESS;
    else if (res)
        return RecordReader<TFile, TP= ass >::INVALID_FORMAT;

    // meta string has to be empty or identical to sequence'= s meta
    if ((qualmeta_buffer !=3D "") && (qual= meta_buffer !=3D meta))
        return RecordReader<TFile, TP= ass >::INVALID_FORMAT;
...

and the test fails because of the qualmeta_buffer not being equal to= meta.
+    meta    {data_begin=3D0x001757e0 &qu= ot;EAS18:1:1:1:1:1119:0/1=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=FD=FD= =FD=FD=AB=AB=AB=AB=AB=AB=AB=AB" data_end=3D0x001757f6 "=CD=CD=CD= =CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=FD=FD=FD=FD=AB=AB=AB=AB=AB=AB=AB=AB"= data_capacity=3D32 }    const seqan::String<char,seqan::= Alloc<void> > &
+    qualmeta_buffer    {data_begin=3D0x0= 017dc40 "EAS18:1:1:1:1:1119:0/1 ltrim=3D1 rtrim=3D38=CD=CD=CD=CD=CD=CD= =CD=CD=CD=CD=CD=CD=CD=CD=FD=FD=FD=FD=AB=AB=AB=AB=AB=AB=AB=AB=FE=EE=FE=EE=FE= =EE=FE" data_end=3D0x0017dc67 "=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD=CD= =CD=CD=CD=FD=FD=FD=FD=AB=AB=AB=AB=AB=AB=AB=AB=FE=EE=FE=EE=FE=EE=FE" da= ta_capacity=3D49 }    seqan::String<char,seqan::Alloc<= void> >

that section: " ltrim=3D1 rtrim=3D38" appears to be a format diff= erence that kseq.h accepts as a valid quality segment, but read_fasta_fastq= .h does not.

So, this question now has bifurcated into a second question and that is wha= t is considered a valid fastq format?





--_000_FCCAB9D80C3DAB47B5601C5B0E62872B29435096ex02bcampusfube_-- From theo@stillwater-sc.com Wed Jan 30 16:50:15 2013 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0ZvR-0038I0-F6>; Wed, 30 Jan 2013 16:50:13 +0100 Received: from mail42c40.carrierzone.com ([209.235.156.182]) by relay1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0ZvR-000xqI-4e>; Wed, 30 Jan 2013 16:50:13 +0100 X-Authenticated-User: theo.stillwater-sc.com Received: from [192.168.1.106] (173-162-153-241-NewEngland.hfc.comcastbusiness.net [173.162.153.241]) (authenticated bits=0) by mail42c40.carrierzone.com (8.13.6/8.13.1) with ESMTP id r0UFo7O1028605 for ; Wed, 30 Jan 2013 15:50:08 +0000 Message-ID: <5109412A.7040309@stillwater-sc.com> Date: Wed, 30 Jan 2013 10:50:02 -0500 From: Theodore Omtzigt Organization: Stillwater Supercomputing, Inc. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: seqan-dev@lists.fu-berlin.de References: In-Reply-To: X-Enigmail-Version: 1.5 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-CSC: 0 X-CHA: v=2.0 cv=I9nSsqcg c=1 sm=1 a=4MqCJTanTeL1f/Xet1sSjg==:17 a=jl2ymW9NZSsA:10 a=kU_gTWjl8rgA:10 a=Hf-sAbsWREgA:10 a=8nJEP1OIZ-IA:10 a=ek83P5UFAAAA:8 a=T-vonbXIbQkA:10 a=dOR4cTjJAAAA:8 a=FPwEv5VlAAAA:8 a=OhqHVdgWAAAA:8 a=kVNBsCkjUXv6h2pjj9UA:9 a=wPNLvfGTeEIA:10 a=KRM8iaPUFCAA:10 a=CbyiBEXoxHMA:10 a=67T1GQF_SpIA:10 a=ifuZ8liBViwA:10 a=4MqCJTanTeL1f/Xet1sSjg==:117 X-CTCH-RefID: str=0001.0A020202.51094131.0097, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-Originating-IP: 209.235.156.182 X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359561013-00000B1F-95F110BC/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.221182, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_DNSWL_NONE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Gabun.ZEDAT.FU-Berlin.DE X-Spam-Level: Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 (Holtgrewe, Manuel) X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Jan 2013 15:50:15 -0000 This data set came from the BFCounter program that introduced the Bloom filter for filtering out erroneous k-mers http://pritch.bsd.uchicago.edu/bfcounter.html Here is a snippet of one of these file: @EAS18:1:1:1:1:1119:0/1 NGTTACTTCGCGCTTTCACCGGAAGACGAAGCGCGCGATGCAGCGCGTCATATTCGTGACCANNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +EAS18:1:1:1:1:1119:0/1 ltrim=1 rtrim=38 BTWa^`^``X^__bb_`_a]QX`\UW_H_\V^OZGZMZ_]RGWWGZTGZZWYT\GZX]_YWZBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB @EAS18:1:1:1:1:927:0/1 NGTAGCAAATCAAAAAGGTGGCGCTGGCAACGCTGGCGAGTGAGCCTAAATTCAGTGCCGCCGTCATCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +EAS18:1:1:1:1:927:0/1 ltrim=1 rtrim=32 B`\`bbbbabbb_[`bbYb`Zbbba[\b\bbab`X^\^[\GTbVH^\]XY[_VQQ_T^^a^]\]bba\BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB @EAS18:1:1:1:1:639:0/1 NACTTTTGCGGGAAGAATGGAAATAATATTAACGGTTTTAGTTTCTTGTTTGGTATTCAGTTGATCGGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +EAS18:1:1:1:1:639:0/1 ltrim=1 rtrim=32 BbbbbbbZbbbbbbVbbbb`bbbbba^ab_^ab_]G]baa_\`aa[VTH^_KV`bb``^[U[H]H[RKBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB @EAS18:1:1:1:1:1479:0/1 NCCTTTCTGCGCTGCATTAACTTCCTCGAAAAACCGAGTGAAGGGTCGATCGTGGTCAATGGCCAGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +EAS18:1:1:1:1:1479:0/1 ltrim=1 rtrim=34 Ba^`aaaaa`abaaabbZ`[a]bbb[b]bbVa_bbbbb]ZY`aWMG^ab]baZZ\I_b`\MM[\aQBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB @EAS18:1:1:1:1:1131:0/1 NCGCATACATCAGCGAGAAACCGCCATCACGACGCGGATCGGTTGGCTCATACAGCTCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +EAS18:1:1:1:1:1131:0/1 ltrim=1 rtrim=42 BbUa_Y_b__`[_bZWQ_[Xab`bba`a_a]bb``_\\V[ZTIXGT_a_Z]^`MM\\[BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB @EAS18:1:1:1:1:1469:0/1 NGAACCTCGGAATGCCGGAATCAGAATCCGGTGCCTTACCGCTTGGCGATACCCCAACAAATTGGTTTTGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +EAS18:1:1:1:1:1469:0/1 ltrim=1 rtrim=30 BaZbbbabaa`[`aa`_`[`babbb_ZQ_U]]_bb^a_W`aba]^\ZTb\W^^_SHT`I]H\QZJTbabaBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB @EAS18:1:1:1:1:989:0/1 NGAGTGAAACACCATTGCCAGAAAATCATTTACTGGATGCGCGGTTACGTAAAGAAAAAGAAGATGCAANNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +EAS18:1:1:1:1:989:0/1 ltrim=1 rtrim=31 Bbab]_bbbbbbb\baaab[]W\\a`bba`^Za`Y`[\abY`\_bZbbbW^aZVV`bbXSJa[`S[aa`BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB On 1/30/2013 6:00 AM, seqan-dev-request@lists.fu-berlin.de wrote: > Send seqan-dev mailing list submissions to > seqan-dev@lists.fu-berlin.de > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.fu-berlin.de/listinfo/seqan-dev > or, via email, send a message with subject or body 'help' to > seqan-dev-request@lists.fu-berlin.de > > You can reach the person managing the list at > seqan-dev-owner@lists.fu-berlin.de > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of seqan-dev digest..." > > > Today's Topics: > > 1. Re: Zlib linking errors under 64bit Windows 7 (Holtgrewe, Manuel) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 30 Jan 2013 10:14:31 +0100 > From: "Holtgrewe, Manuel" > To: SeqAn Development > Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 > Message-ID: > > Content-Type: text/plain; charset="iso-8859-1" > > Hi Theo, > > The FASTQ format is a good example for the file format fuzziness in bioinformatics. There is no real standard, only an article [1] telling what is there. The supplemental material is a tar.gz file that contains an example which says different ids for sequence and quality meta are an error. > > That said, what is the source of the FASTQ file? Ignoring the quality meta would not be a big change in the parser and be a change that I would be quite willing to make given that a "major" source of FASTQ generates such files. > > In a future version, such things should be configurable when reading FASTQ but alas we do not currently have time to make the change to make the I/O of sequences more configurable. > > HTH, > Manuel > > [1] http://nar.oxfordjournals.org/content/38/6/1767 > > ________________________________ > From: Theodore Omtzigt [theo@stillwater-sc.com] > Sent: Wednesday, January 30, 2013 1:31 AM > To: SeqAn Dev List > Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 > > I have got the linking to work outside of the SeqAn CMake build environment, so I have now at least isolated it to be a problem in the SeqAn build environment. > > However, I also run into a format error on a fastq file that is passing with the standard code from Genome Research Lab (kseq.h). > > The problem occurs in the last test in this code fragment from read_fasta_fastq.h > template typename TQualString, > typename TFile, > typename TPass> > inline int > _readQualityBlock(TQualString & qual, > RecordReader & reader, > unsigned const seqLength, > TIdString const & meta, > Fastq const & /*tag*/) > { > // READ AND CHECK QUALITIES' META > if (atEnd(reader)) > return EOF_BEFORE_SUCCESS; > if (value(reader) != '+') > return RecordReader::INVALID_FORMAT; > goNext(reader); > if (resultCode(reader)) > return resultCode(reader); > if (atEnd(reader)) // empty ID, no sequence, this is legal? TODO > return 0; > > CharString qualmeta_buffer; > int res = readLine(qualmeta_buffer, reader); > if (res && res == EOF_BEFORE_SUCCESS) > return EOF_BEFORE_SUCCESS; > else if (res) > return RecordReader::INVALID_FORMAT; > > // meta string has to be empty or identical to sequence's meta > if ((qualmeta_buffer != "") && (qualmeta_buffer != meta)) > return RecordReader::INVALID_FORMAT; > ... > > and the test fails because of the qualmeta_buffer not being equal to meta. > + meta {data_begin=0x001757e0 "EAS18:1:1:1:1:1119:0/1??????????????????????????" data_end=0x001757f6 "??????????????????????????" data_capacity=32 } const seqan::String > & > + qualmeta_buffer {data_begin=0x0017dc40 "EAS18:1:1:1:1:1119:0/1 ltrim=1 rtrim=38?????????????????????????????????" data_end=0x0017dc67 "?????????????????????????????????" data_capacity=49 } seqan::String > > > that section: " ltrim=1 rtrim=38" appears to be a format difference that kseq.h accepts as a valid quality segment, but read_fasta_fastq.h does not. > > So, this question now has bifurcated into a second question and that is what is considered a valid fastq format? > > > > > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: > > ------------------------------ > > _______________________________________________ > seqan-dev mailing list > seqan-dev@lists.fu-berlin.de > https://lists.fu-berlin.de/listinfo/seqan-dev > > > End of seqan-dev Digest, Vol 40, Issue 4 > **************************************** > From theo@stillwater-sc.com Wed Jan 30 19:58:46 2013 Received: from relay1.zedat.fu-berlin.de ([130.133.4.67]) by list1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0crr-003ofQ-85>; Wed, 30 Jan 2013 19:58:43 +0100 Received: from mail42c40.carrierzone.com ([209.235.156.182]) by relay1.zedat.fu-berlin.de (Exim 4.69) for seqan-dev@lists.fu-berlin.de with esmtp (envelope-from ) id <1U0crq-001Rbh-Oc>; Wed, 30 Jan 2013 19:58:43 +0100 X-Authenticated-User: theo.stillwater-sc.com Received: from [192.168.1.106] (173-162-153-241-NewEngland.hfc.comcastbusiness.net [173.162.153.241]) (authenticated bits=0) by mail42c40.carrierzone.com (8.13.6/8.13.1) with ESMTP id r0UIwaYP031436 for ; Wed, 30 Jan 2013 18:58:37 +0000 Message-ID: <51096D56.9060103@stillwater-sc.com> Date: Wed, 30 Jan 2013 13:58:30 -0500 From: Theodore Omtzigt Organization: Stillwater Supercomputing, Inc. User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: seqan-dev@lists.fu-berlin.de References: In-Reply-To: X-Enigmail-Version: 1.5 Content-Type: multipart/alternative; boundary="------------030208020906090101050606" X-CSC: 0 X-CHA: v=2.0 cv=I9nSsqcg c=1 sm=1 a=4MqCJTanTeL1f/Xet1sSjg==:17 a=jl2ymW9NZSsA:10 a=5TU2J6dv5WgA:10 a=Hf-sAbsWREgA:10 a=ek83P5UFAAAA:8 a=i0nsaAlmPoUA:10 a=FPwEv5VlAAAA:8 a=gFOZupeGOXndn6v1oOIA:9 a=wPNLvfGTeEIA:10 a=67T1GQF_SpIA:10 a=ifuZ8liBViwA:10 a=_W_S_7VecoQA:10 a=zr9RIFQlKYmbiTtM:21 a=4MqCJTanTeL1f/Xet1sSjg==:117 X-CTCH-RefID: str=0001.0A020203.51096D5E.00BD, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 X-CTCH-VOD: Unknown X-CTCH-Spam: Unknown X-CTCH-Score: 0.000 X-CTCH-Rules: X-CTCH-Flags: 0 X-CTCH-ScoreCust: 0.000 X-Originating-IP: 209.235.156.182 X-ZEDAT-Hint: A X-purgate: clean X-purgate-type: clean X-purgate-ID: 151147::1359572323-00000B1F-09F06AB5/0-0/0-0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.034880, version=1.2.2 X-Spam-Flag: NO X-Spam-Status: No, score=0.0 required=5.0 tests=HTML_MESSAGE, RCVD_IN_DNSWL_NONE X-Spam-Checker-Version: SpamAssassin 3.3.2 on Algerien.ZEDAT.FU-Berlin.DE X-Spam-Level: Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 X-BeenThere: seqan-dev@lists.fu-berlin.de X-Mailman-Version: 2.1.14 Precedence: list Reply-To: SeqAn Development List-Id: SeqAn Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Jan 2013 18:58:46 -0000 This is a multi-part message in MIME format. --------------030208020906090101050606 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Manuel: Here is the linker command of my own environment that successfully links the right zlib library: as you can see, I do my library managed through link lib paths, and I label my libraries with the version and compile options so I can manage them all in the same directory and pointed at by the link lib paths. /OUT:"D:\Build\vs10\bioinformatics\Concepts\sw\src\Concepts\BloomFilter-v1\Debug\kmer_count.exe" /INCREMENTAL /NOLOGO /LIBPATH:"D:/Perforce/Work/oss/lib/boost/msvc100" /LIBPATH:"D:/Perforce/Work/oss/lib/boost/msvc100/Debug" /LIBPATH:"D:/Perforce/Work/oss/lib/zlib/msvc10" /LIBPATH:"D:/Perforce/Work/oss/lib/zlib/msvc10/Debug" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "comdlg32.lib" "advapi32.lib" "zlib-v1.2.7-mtdll.lib" /MANIFEST /ManifestFile:"kmer_count.dir\Debug\kmer_count.exe.intermediate.manifest" /ALLOWISOLATION /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"D:/Build/vs10/bioinformatics/Concepts/sw/src/Concepts/BloomFilter-v1/Debug/kmer_count.pdb" /SUBSYSTEM:CONSOLE /STACK:"10000000" /PGD:"D:\Build\vs10\bioinformatics\Concepts\sw\src\Concepts\BloomFilter-v1\Debug\kmer_count.pgd" /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:/Build/vs10/bioinformatics/Concepts/sw/src/Concepts/BloomFilter-v1/Debug/kmer_count.lib" /MACHINE:X86 /ERRORREPORT:QUEUE Here is the linker command of the stream_read_fastq_gz.exe project in the seqan environment as it is generated on my system: /OUT:"D:\Build\vs10\seqan\core\demos\Release\stream_read_fastq_gz.exe" /INCREMENTAL:NO /NOLOGO /FORCE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "comdlg32.lib" "advapi32.lib" "C:\seqan-contrib-D20111031-x64\vs10\lib\zlib.lib" "C:\seqan-contrib-D20111031-x64\vs10\lib\bz2.lib" /MANIFEST /ManifestFile:"stream_read_fastq_gz.dir\Release\stream_read_fastq_gz.exe.intermediate.manifest" /ALLOWISOLATION /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /PDB:"D:/Build/vs10/seqan/core/demos/Release/stream_read_fastq_gz.pdb" /MAP /SUBSYSTEM:CONSOLE /STACK:"10000000" /PGD:"D:\Build\vs10\seqan\core\demos\Release\stream_read_fastq_gz.pgd" /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:/Build/vs10/seqan/core/demos/Release/stream_read_fastq_gz.lib" /MACHINE:X86 /ERRORREPORT:QUEUE I think your postulate is about 32bit vs 64bit is good so let me test that. On 1/30/2013 4:06 AM, seqan-dev-request@lists.fu-berlin.de wrote: > > Message: 3 > Date: Wed, 30 Jan 2013 10:06:49 +0100 > From: "Holtgrewe, Manuel" > To: SeqAn Development > Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7 > Message-ID: > > Content-Type: text/plain; charset="iso-8859-1" > > Hi Theo, > > Can you send me the linker command? > > There are two possible sources of problems that I can see: > > (1) The contribs are not picked up correctly and zlib is not linked in correctly. > (2) You are trying to link a 32 bit program (indicated by Win32) against the 64 bit library (indicated by the path C:\...-x64). > > My guess is that (2) is the problem but I could be wrong. To generate build files for 64 bit windows in CMake, use the Generator "Visual Studio XX Win64", i.e. the Win64 variant is important. > > Linking on Windows was pretty painful in my opinion. I could not get correctly redistributeable DLLs (you still need some library file for the linking apparently) so we redistribute object files for static linking. Note that at least for static libraries, you need to link debug builds against debug-built libraries. The SeqAn build system currently takes care of this. > > I wish this was easier but I could not find a better way or anyone who could tell me about a better way. > > Cheers, > Manuel > > ________________________________ > From: Theodore Omtzigt [theo@stillwater-sc.com] > Sent: Tuesday, January 29, 2013 7:31 PM > To: SeqAn Dev List > Subject: [Seqan-dev] Zlib linking errors under 64bit Windows 7 > > I am not having much luck getting unstuck on a zlib linking error to unlock the goodness of SequenceStream on gz compressed files. In short, I cannot get the right zlib symbols between seqan calling and zlib binding: > > 1>------ Build started: Project: count_kmers, Configuration: Release Win32 ------ > 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzclose referenced in function "void __cdecl seqan::close(class seqan::Stream > &)" (?close@seqan@@YAXAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) > 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzeof referenced in function "bool __cdecl seqan::streamEof(class seqan::Stream > &)" (?streamEof@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) > 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzerror referenced in function "int __cdecl seqan::streamError(class seqan::Stream > &)" (?streamError@seqan@@YAHAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z) > 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzread referenced in function "unsigned int __cdecl seqan::streamReadBlock(char *,class seqan::Stream > &,unsigned int)" (?streamReadBlock@seqan@@YAIPADAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@I@Z) > 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzopen referenced in function "bool __cdecl seqan::open(class seqan::Stream > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z) > 1>count_kmers.obj : error LNK2019: unresolved external symbol _gzdopen referenced in function "bool __cdecl seqan::open(class seqan::Stream > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z) > 1>D:\Build\vs10\bioinformatics\apps\Stillwater-bio\seqan\apps\count_kmers\Release\count_kmers.exe : fatal error LNK1120: 6 unresolved externals > > When I DUMPBIN the symbols in zlib.lib in C:\seqan-contrib-D20111031-x64\vs10\lib, the error can be explained as the above mentioned symbols are not in the library file. Instead they are the gzopen/gzeof/gzerror/gzclose variants. > > I went back to built zlib on my system so that I could generate very specific zlib versions, and the variety that does produce the _gz### versions is the multi-threaded DLL C++ run-time version. However, the experiment where I link directly with this version of the library STILL produces the same errors, so I now thinking that it has to do with not having the right defines to specialize the zlib API. Has anyone successfully solved this problem on Windows? > > Looking forward to a solution. > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: > > ------------------------------ > > _______________________________________________ > seqan-dev mailing list > seqan-dev@lists.fu-berlin.de > https://lists.fu-berlin.de/listinfo/seqan-dev > > > End of seqan-dev Digest, Vol 40, Issue 3 > **************************************** > --------------030208020906090101050606 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Manuel:

 Here is the linker command of my own environment that successfully links the right zlib library: as you can see, I do my library managed through link lib paths, and I label my libraries with the version and compile options so I can manage them all in the same directory and pointed at by the link lib paths.

/OUT:"D:\Build\vs10\bioinformatics\Concepts\sw\src\Concepts\BloomFilter-v1\Debug\kmer_count.exe" /INCREMENTAL /NOLOGO /LIBPATH:"D:/Perforce/Work/oss/lib/boost/msvc100" /LIBPATH:"D:/Perforce/Work/oss/lib/boost/msvc100/Debug" /LIBPATH:"D:/Perforce/Work/oss/lib/zlib/msvc10" /LIBPATH:"D:/Perforce/Work/oss/lib/zlib/msvc10/Debug" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "comdlg32.lib" "advapi32.lib" "zlib-v1.2.7-mtdll.lib" /MANIFEST /ManifestFile:"kmer_count.dir\Debug\kmer_count.exe.intermediate.manifest" /ALLOWISOLATION /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"D:/Build/vs10/bioinformatics/Concepts/sw/src/Concepts/BloomFilter-v1/Debug/kmer_count.pdb" /SUBSYSTEM:CONSOLE /STACK:"10000000" /PGD:"D:\Build\vs10\bioinformatics\Concepts\sw\src\Concepts\BloomFilter-v1\Debug\kmer_count.pgd" /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:/Build/vs10/bioinformatics/Concepts/sw/src/Concepts/BloomFilter-v1/Debug/kmer_count.lib" /MACHINE:X86 /ERRORREPORT:QUEUE

Here is the linker command of the stream_read_fastq_gz.exe project in the seqan environment as it is generated on my system:

/OUT:"D:\Build\vs10\seqan\core\demos\Release\stream_read_fastq_gz.exe" /INCREMENTAL:NO /NOLOGO /FORCE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "comdlg32.lib" "advapi32.lib" "C:\seqan-contrib-D20111031-x64\vs10\lib\zlib.lib" "C:\seqan-contrib-D20111031-x64\vs10\lib\bz2.lib" /MANIFEST /ManifestFile:"stream_read_fastq_gz.dir\Release\stream_read_fastq_gz.exe.intermediate.manifest" /ALLOWISOLATION /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /PDB:"D:/Build/vs10/seqan/core/demos/Release/stream_read_fastq_gz.pdb" /MAP /SUBSYSTEM:CONSOLE /STACK:"10000000" /PGD:"D:\Build\vs10\seqan\core\demos\Release\stream_read_fastq_gz.pgd" /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:/Build/vs10/seqan/core/demos/Release/stream_read_fastq_gz.lib" /MACHINE:X86 /ERRORREPORT:QUEUE

I think your postulate is about 32bit vs 64bit is good so let me test that.



Message: 3
Date: Wed, 30 Jan 2013 10:06:49 +0100
From: "Holtgrewe, Manuel" <manuel.holtgrewe@fu-berlin.de>
To: SeqAn Development <seqan-dev@lists.fu-berlin.de>
Subject: Re: [Seqan-dev] Zlib linking errors under 64bit Windows 7
Message-ID:
	<FCCAB9D80C3DAB47B5601C5B0E62872B2943507F@ex02b.campus.fu-berlin.de>
Content-Type: text/plain; charset="iso-8859-1"

Hi Theo,

Can you send me the linker command?

There are two possible sources of problems that I can see:

(1) The contribs are not picked up correctly and zlib is not linked in correctly.
(2) You are trying to link a 32 bit program (indicated by Win32) against the 64 bit library (indicated by the path C:\...-x64).

My guess is that (2) is the problem but I could be wrong. To generate build files for 64 bit windows in CMake, use the Generator "Visual Studio XX Win64", i.e. the Win64 variant is important.

Linking on Windows was pretty painful in my opinion. I could not get correctly redistributeable DLLs (you still need some library file for the linking apparently) so we redistribute object files for static linking. Note that at least for static libraries, you need to link debug builds against debug-built libraries. The SeqAn build system currently takes care of this.

I wish this was easier but I could not find a better way or anyone who could tell me about a better way.

Cheers,
Manuel

________________________________
From: Theodore Omtzigt [theo@stillwater-sc.com]
Sent: Tuesday, January 29, 2013 7:31 PM
To: SeqAn Dev List
Subject: [Seqan-dev] Zlib linking errors under 64bit Windows 7

I am not having much luck getting unstuck on a zlib linking error to unlock the goodness of SequenceStream on gz compressed files. In short, I cannot get the right zlib symbols between seqan calling and zlib binding:

1>------ Build started: Project: count_kmers, Configuration: Release Win32 ------
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzclose referenced in function "void __cdecl seqan::close(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &)" (?close@seqan@@YAXAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzeof referenced in function "bool __cdecl seqan::streamEof(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &)" (?streamEof@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzerror referenced in function "int __cdecl seqan::streamError(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &)" (?streamError@seqan@@YAHAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzread referenced in function "unsigned int __cdecl seqan::streamReadBlock(char *,class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &,unsigned int)" (?streamReadBlock@seqan@@YAIPADAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@I@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzopen referenced in function "bool __cdecl seqan::open(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z)
1>count_kmers.obj : error LNK2019: unresolved external symbol _gzdopen referenced in function "bool __cdecl seqan::open(class seqan::Stream<struct seqan::Tag<struct seqan::GZFile_> > &,char const *,char const *)" (?open@seqan@@YA_NAAV?$Stream@U?$Tag@UGZFile_@seqan@@@seqan@@@1@PBD1@Z)
1>D:\Build\vs10\bioinformatics\apps\Stillwater-bio\seqan\apps\count_kmers\Release\count_kmers.exe : fatal error LNK1120: 6 unresolved externals

When I DUMPBIN the symbols in zlib.lib in C:\seqan-contrib-D20111031-x64\vs10\lib, the error can be explained as the above mentioned symbols are not in the library file. Instead they are the gzopen/gzeof/gzerror/gzclose variants.

I went back to built zlib on my system so that I could generate very specific zlib versions, and the variety that does produce the _gz### versions is the multi-threaded DLL C++ run-time version. However, the experiment where I link directly with this version of the library STILL produces the same errors, so I now thinking that it has to do with not having the right defines to specialize the zlib API. Has anyone successfully solved this problem on Windows?

Looking forward to a solution.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.fu-berlin.de/pipermail/seqan-dev/attachments/20130130/384d2e0a/attachment.html>

------------------------------

_______________________________________________
seqan-dev mailing list
seqan-dev@lists.fu-berlin.de
https://lists.fu-berlin.de/listinfo/seqan-dev


End of seqan-dev Digest, Vol 40, Issue 3
****************************************


--------------030208020906090101050606--