From bseely at stsci.edu Tue Oct 6 21:09:19 2020 From: bseely at stsci.edu (Bruce Seely) Date: Tue, 6 Oct 2020 21:09:19 -0400 Subject: [freetds] SQL_ERROR from SQLColAttribute Message-ID: <29067635-aa7e-c647-34d3-070ce7d83c3f@stsci.edu> Howdy, Our Lisp vendor's ODBC interface stopped working with the FreeTDS 1.0 release. I am trying to isolate the problem, and have a test case to show how it fails. The test function performs these operations: - connect to R2D2 as bseely - SQLExecDirect? "use pps_lrp_dev_14_11" - SQLExecDirect? "select * from ppsdb_version" - SQLNumResultCols - SQLColAttribute for col #1, SQL_DESC_NAME - SQLGetDiagRec SQLExecDirect correctly accesses the database. The call to SQLColAttribute is returning SQL_ERROR. The call to SQLGetDiagRec reports that there is nothing to report. I have attached a combined ODBC log & TDS_DUMP log. The SQLColAttribute call that returns SQL_ERROR is on line 513 There is an error on line 532 that I don't understand: error_export.h:83:SQLErrorW(0x0, 0x0, 0x7feee81007e0, 0x7ffee33c70a0, 0x7ffee33c7bd0, 0x7feeea002e00, 512, 0x7ffee33c8000) If I can provide anything else that would be useful, let me know. Any help or ideas would be greatly appreciated. Thanks, Bruce -------------- next part -------------- [015992.140304] alisp 1164B25C0 ENTER SQLAllocHandle SQLSMALLINT 2 (SQL_HANDLE_DBC) SQLHANDLE 0x7feee5c00260 SQLHANDLE * 0x7ffee33c6480 [015992.140322] alisp 1164B25C0 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 (SQL_HANDLE_DBC) SQLHANDLE 0x7feee5c00260 SQLHANDLE * 0x7ffee33c6480 (0x7feee5f10bd0) [015992.140348] alisp 1164B25C0 ENTER SQLDriverConnect SQLHDBC 0x7feee5f10bd0 SQLPOINTER 0x0 SQLCHAR * 0x7ffee33c6da0 | DSN=R2D2;UID=bseely;PWD=************ | SQLSMALLINT -3 (SQL_NTS) SQLCHAR * 0x7ffee33c6570 SQLSMALLINT 1024 SQLSMALLINT * 0x7ffee33c6d80 SQLUSMALLINT 0 (SQL_DRIVER_NOPROMPT) odbc.c:1531:SQLAllocHandle(2, 0x7feee5f04d00, 0x7feee5f10bf8) odbc.c:1567:_SQLAllocConnect(0x7feee5f04d00, 0x7feee5f10bf8) odbc_export.h:19:SQLDriverConnectW(0x7feee7016600, 0x0, DSN=R2D2;UID=bseely;PWD=vfr4xsw2zaq1, -3, 0x7feee700d800, 1024, 0x7ffee33c6d80, 0) config.c:598: port = '1433' config.c:598: tds version = '7.2' config.c:955:Setting tds version to 7.2 (0x702). config.c:598: text size = '2000000' config.c:833:Setting 'dump_file' to 'stderr' from $TDSDUMP. iconv.c:365:tds_iconv_open(0x7feee5c0c350, UTF-8) iconv.c:387:setting up conversions for client charset "UTF-8" iconv.c:389:preparing iconv for "UTF-8" <-> "UCS-2LE" conversion iconv.c:428:tds_iconv_open: done net.c:391:Connecting with protocol version 7.2 net.c:318:Connecting to 10.128.21.119 port 1433 net.c:340:tds_setup_socket: connect(2) returned "Operation now in progress" net.c:528:tds_open_socket() succeeded packet.c:852:Sending packet 0000 12 01 00 3a 00 00 00 00-00 00 1a 00 06 01 00 20 |...:.... ....... | 0010 00 01 02 00 21 00 0c 03-00 2d 00 04 04 00 31 00 |....!... .-....1.| 0020 01 ff 09 00 00 00 00 00-00 4d 53 53 51 4c 53 65 |.?...... .MSSQLSe| 0030 72 76 65 72 00 50 45 01-00 00 |rver.PE. ..| packet.c:410:Received packet 0000 04 01 00 2b 00 00 01 00-00 00 1a 00 06 01 00 20 |...+.... ....... | 0010 00 01 02 00 21 00 01 03-00 22 00 00 04 00 22 00 |....!... ."....".| 0020 01 ff 0d 00 15 de 00 00-00 00 00 |.?...?.. ...| login.c:1281:detected crypt flag 0 tls.c:1013:setting default openssl cipher to:HIGH:!SSLv2:!aNULL:-DH tls.c:147:in tds_push_func_login tls.c:117:in tds_pull_func_login packet.c:852:Sending packet 0000 12 01 01 4b 00 00 00 00-16 03 01 01 3e 01 00 01 |...K.... ....>...| 0010 3a 03 03 35 9f 7e 7c 5a-0c ca 0a cb 56 51 25 70 |:..5.~|Z .?.?VQ%p| 0020 d1 d4 b8 5b 19 d7 45 75-bc 50 67 b6 a6 1b 40 92 |???[.?Eu ?Pg??. at .| 0030 cf b2 37 20 01 b6 da 22-81 e0 cd 83 87 26 2d b9 |??7 .??" .??..&-?| 0040 1c 8a 1c bb 3f 4a c4 84-ce bd 81 73 30 8a c3 1a |...??J?. ??.s0.?.| 0050 d8 89 dd 1b 00 5c 13 02-13 03 13 01 c0 2c c0 30 |?.?..\.. ....?,?0| 0060 cc a9 cc a8 c0 af c0 ad-c0 5d c0 61 c0 2b c0 2f |???????? ?]?a?+?/| 0070 c0 ae c0 ac c0 5c c0 60-c0 24 c0 28 c0 73 c0 77 |?????\?` ?$?(?s?w| 0080 c0 23 c0 27 c0 72 c0 76-c0 0a c0 14 c0 09 c0 13 |?#?'?r?v ?.?.?.?.| 0090 00 9d c0 a1 c0 9d c0 51-00 9c c0 a0 c0 9c c0 50 |..???.?Q ..???.?P| 00a0 00 3d 00 c0 00 3c 00 ba-00 35 00 84 00 2f 00 41 |.=.?.<.? .5.../.A| 00b0 00 ff 01 00 00 95 00 0b-00 04 03 00 01 02 00 0a |.?...... ........| 00c0 00 0c 00 0a 00 1d 00 17-00 1e 00 19 00 18 00 23 |........ .......#| 00d0 00 00 00 16 00 00 00 17-00 00 00 0d 00 30 00 2e |........ .....0..| 00e0 04 03 05 03 06 03 08 07-08 08 08 09 08 0a 08 0b |........ ........| 00f0 08 04 08 05 08 06 04 01-05 01 06 01 03 03 02 03 |........ ........| 0100 03 01 02 01 03 02 02 02-04 02 05 02 06 02 00 2b |........ .......+| 0110 00 09 08 03 04 03 03 03-02 03 01 00 2d 00 02 01 |........ ....-...| 0120 01 00 33 00 26 00 24 00-1d 00 20 d5 ba 54 3f de |..3.&.$. .. ??T??| 0130 0b 6e 18 0c 57 dc b8 1f-53 80 ee 1a 16 dc 53 6e |.n..W??. S.?..?Sn| 0140 c4 16 fc ec 38 93 ce 8f-4e e1 59 |?.??8.?. N?Y| packet.c:410:Received packet 0000 12 01 04 a0 00 00 00 00-16 03 03 04 93 02 00 00 |...?.... ........| 0010 51 03 03 5f 7d 11 6d c4-c0 d1 51 1d 30 f0 69 32 |Q.._}.m? ??Q.0?i2| 0020 fe 77 35 81 e2 72 b6 fb-55 5e 14 6e 2e 42 b5 c8 |?w5.?r?? U^.n.B??| 0030 2d 23 51 20 d8 26 00 00-4e 31 61 9a 9b 21 89 c8 |-#Q ?&.. N1a..!.?| 0040 90 e1 b8 92 27 b1 0b 1b-dc 5d a4 c7 eb 42 41 2f |.??.'?.. ?]???BA/| 0050 93 92 eb ab c0 30 00 00-09 00 17 00 00 ff 01 00 |..???0.. .....?..| 0060 01 00 0b 00 03 0a 00 03-07 00 03 04 30 82 03 00 |........ ....0...| 0070 30 82 01 e8 a0 03 02 01-02 02 10 1f 5b d8 0b 9f |0..??... ....[?..| 0080 3f 22 86 46 d9 8a 79 37-c3 4c ac 30 0d 06 09 2a |?".F?.y7 ?L?0...*| 0090 86 48 86 f7 0d 01 01 05-05 00 30 3b 31 39 30 37 |.H.?.... ..0;1907| 00a0 06 03 55 04 03 1e 30 00-53 00 53 00 4c 00 5f 00 |..U...0. S.S.L._.| 00b0 53 00 65 00 6c 00 66 00-5f 00 53 00 69 00 67 00 |S.e.l.f. _.S.i.g.| 00c0 6e 00 65 00 64 00 5f 00-46 00 61 00 6c 00 6c 00 |n.e.d._. F.a.l.l.| 00d0 62 00 61 00 63 00 6b 30-20 17 0d 32 30 30 39 31 |b.a.c.k0 ..20091| 00e0 35 31 30 31 31 34 32 5a-18 0f 32 30 35 30 30 39 |5101142Z ..205009| 00f0 31 35 31 30 31 31 34 32-5a 30 3b 31 39 30 37 06 |15101142 Z0;1907.| 0100 03 55 04 03 1e 30 00 53-00 53 00 4c 00 5f 00 53 |.U...0.S .S.L._.S| 0110 00 65 00 6c 00 66 00 5f-00 53 00 69 00 67 00 6e |.e.l.f._ .S.i.g.n| 0120 00 65 00 64 00 5f 00 46-00 61 00 6c 00 6c 00 62 |.e.d._.F .a.l.l.b| 0130 00 61 00 63 00 6b 30 82-01 22 30 0d 06 09 2a 86 |.a.c.k0. ."0...*.| 0140 48 86 f7 0d 01 01 01 05-00 03 82 01 0f 00 30 82 |H.?..... ......0.| 0150 01 0a 02 82 01 01 00 f3-dd f8 7f 6e 36 44 5d 44 |.......? ??.n6D]D| 0160 05 43 43 ba 2b ec 04 a6-9b 23 4d f6 43 72 34 e2 |.CC?+?.? .#M?Cr4?| 0170 ec 01 7e 03 d3 21 39 8e-a4 cf 40 6a 72 c5 52 09 |?.~.?!9. ??@jr?R.| 0180 4d e9 9b 07 a0 bf 2f 63-41 62 88 90 a5 a6 49 8d |M?..??/c Ab..??I.| 0190 fa 72 80 04 fd 8b 65 c9-e6 74 8c 85 49 44 94 24 |?r..?.e? ?t..ID.$| 01a0 3c 00 0c 6b be 38 5c a7-4c 4b 5c df 92 24 f6 75 |<..k?8\? LK\?.$?u| 01b0 43 eb 59 91 78 05 53 14-6f 84 16 a1 8a 40 f7 1d |C?Y.x.S. o..?.@?.| 01c0 b6 32 4c 4a ce ac 2d ee-9e 12 7f 6b 7f c2 df b7 |?2LJ??-? ...k.???| 01d0 0a ad a0 f5 2c 73 c4 60-b9 9d dd f8 d9 4f 85 99 |.???,s?` ?.???O..| 01e0 fc 0d 37 32 8f 4d fb 5a-f9 e9 54 de 37 ae e9 5c |?.72.M?Z ??T?7??\| 01f0 09 7a ea 8e 29 22 cd 91-1e 99 fb 8b e3 d8 6f 62 |.z?.)"?. ..?.??ob| 0200 e0 d1 66 03 ea b8 25 a1-b3 61 7a dd 49 9f 22 b6 |??f.??%? ?az?I."?| 0210 59 f9 c3 39 b9 f8 f7 ed-8c 31 11 71 ef 7c 8f b6 |Y??9???? .1.q?|.?| 0220 3a 98 88 1a cb 05 47 90-fe 57 00 24 79 64 d4 84 |:...?.G. ?W.$yd?.| 0230 04 05 42 c7 b0 c0 86 f1-d4 32 75 f9 8d e4 df 66 |..B???.? ?2u?.??f| 0240 11 65 4b d6 fa 00 e2 dc-2e f5 42 93 95 80 6d 5a |.eK??.?? .?B...mZ| 0250 86 d1 76 83 ab 75 2f 02-03 01 00 01 30 0d 06 09 |.?v.?u/. ....0...| 0260 2a 86 48 86 f7 0d 01 01-05 05 00 03 82 01 01 00 |*.H.?... ........| 0270 50 b7 6d 7f f8 02 dd e2-ec 7b 14 3f a5 af 2a 0f |P?m.?.?? ?{.???*.| 0280 83 b6 e6 14 cb 3e b7 9a-84 4a 64 2b f2 d5 c7 93 |.??.?>?. .Jd+???.| 0290 10 4a ba 79 3d ce e2 2a-ef bf 88 e3 69 93 d2 3b |.J?y=??* ??.?i.?;| 02a0 69 8d 44 b8 9f c0 c1 cf-d8 29 fc d7 b8 1c 52 47 |i.D?.??? ?)???.RG| 02b0 85 51 cd 20 97 ab c3 07-c6 a4 ff c9 7b 5f ad 0f |.Q? .??. ????{_?.| 02c0 2c 59 dc bc 08 42 39 4f-a7 94 38 c0 74 50 ca 5c |,Y??.B9O ?.8?tP?\| 02d0 8d 89 2f e4 bb e7 6e 1b-35 63 ad 6e b2 01 32 a6 |../???n. 5c?n?.2?| 02e0 be bf b6 7f f0 7c dc d0-15 fb be 54 d8 f9 6b 81 |???.?|?? .??T??k.| 02f0 44 23 e5 89 2a 56 32 8f-56 77 8c d9 23 06 81 70 |D#?.*V2. Vw.?#..p| 0300 6d 42 a2 af 41 8f 24 80-30 3f 50 ae 57 13 06 97 |mB??A.$. 0?P?W...| 0310 6b 12 0e 4d 23 b6 b1 ae-00 f2 83 cd ee ea f9 ff |k..M#??? .?.?????| 0320 f2 60 db 22 68 f4 98 1b-39 57 bd d3 50 81 78 5f |?`?"h?.. 9W??P.x_| 0330 e9 7c 63 fe 32 ca 1a 42-91 d5 f3 e1 93 6c a3 73 |?|c?2?.B .???.l?s| 0340 47 ce 89 ab e6 1f 5d b8-f0 7e ba 24 ba 80 bb 00 |G?.??.]? ?~?$?.?.| 0350 c8 03 b6 33 f6 94 08 33-45 4a 9b d3 92 30 01 67 |?.?3?..3 EJ.?.0.g| 0360 3c 04 a6 9c 15 0b a0 37-54 28 44 91 d4 fa 7f c1 |<.?...?7 T(D.??.?| 0370 0c 00 01 28 03 00 1d 20-b3 d2 f5 6c 81 ce 13 e3 |...(... ???l.?.?| 0380 0a 9e 3e bd ab 2d c2 a7-b8 eb 92 4e ad 84 3f ea |..>??-?? ??.N?.??| 0390 f8 b2 38 5b 59 cb cc 1d-04 01 01 00 39 cb 39 0a |??8[Y??. ....9?9.| 03a0 cd ef 6e cf a6 99 60 5c-a3 03 e6 5c 33 79 e1 2d |??n??.`\ ?.?\3y?-| 03b0 26 88 a6 87 c7 25 ed 04-c3 9a 5a 34 ed 65 65 e3 |&.?.?%?. ?.Z4?ee?| 03c0 56 44 ea 10 92 81 36 83-38 20 be e8 21 f8 8c ef |VD?...6. 8 ??!?.?| 03d0 b7 ef 97 9c b7 0a db c9-8e 9f 94 71 0e 11 4f 90 |??..?.?? ...q..O.| 03e0 29 2f c8 f6 16 09 d3 52-3a 63 48 c2 28 aa 12 4a |)/??..?R :cH?(?.J| 03f0 fb 6e f3 4e 9e 42 f1 89-f4 fd c2 b6 f4 7d db 62 |?n?N.B?. ?????}?b| 0400 4b 56 84 0b e3 6f c3 0b-31 5a 42 c4 b2 3d 18 bb |KV..?o?. 1ZB??=.?| 0410 72 7c 51 86 a4 18 7f ad-0a a1 f6 d8 fa 42 df 4c |r|Q.?..? .????B?L| 0420 d9 2d 91 a0 cc bd a3 60-3b b9 63 81 4c 01 90 9b |?-.????` ;?c.L...| 0430 4b 05 ab d1 d1 53 c5 d5-12 7d 21 a6 d7 19 16 dd |K.???S?? .}!??..?| 0440 05 db 14 8a 91 45 56 18-19 ef 81 9f d5 97 6c 52 |.?...EV. .?..?.lR| 0450 dd 50 80 79 90 3a 8c 43-a1 77 08 d7 98 fe 39 94 |?P.y.:.C ?w.?.?9.| 0460 be 1a 19 07 ba 06 d5 9a-08 28 cc 6f cd 47 31 a5 |?...?.?. .(?o?G1?| 0470 75 93 4e 33 7c d7 e7 53-6d b1 1f 73 d2 d3 bc cc |u.N3|??S m?.s????| 0480 f5 c0 f0 2e 6b 49 d5 64-77 12 4b ac 67 53 53 ae |???.kI?d w.K?gSS?| 0490 71 a8 59 d4 f8 1a ee 17-13 34 bf 22 0e 00 00 00 |q?Y??.?. .4?"....| tls.c:117:in tds_pull_func_login tls.c:147:in tds_push_func_login tls.c:117:in tds_pull_func_login packet.c:852:Sending packet 0000 12 01 00 65 00 00 00 00-16 03 03 00 25 10 00 00 |...e.... ....%...| 0010 21 20 bf ac 1b 60 90 65-22 98 67 78 46 f3 df a9 |! ??.`.e ".gxF???| 0020 21 e2 81 21 22 04 c9 c2-bb 37 cc 0b e5 fe a1 d7 |!?.!".?? ?7?.????| 0030 66 7f 14 03 03 00 01 01-16 03 03 00 28 bc 4e 0f |f....... ....(?N.| 0040 64 30 a2 83 1c d8 1a 96-38 80 5a a6 ba 18 02 32 |d0?..?.. 8.Z??..2| 0050 b1 44 5e 5f 92 70 de 70-d7 df 97 cd 26 f8 f8 c6 |?D^_.p?p ??.?&???| 0060 cd 8a 0f b7 f5 - |?..??| packet.c:410:Received packet 0000 12 01 00 3b 00 00 00 00-14 03 03 00 01 01 16 03 |...;.... ........| 0010 03 00 28 00 00 00 00 00-00 00 00 52 e7 87 bb ce |..(..... ...R?.??| 0020 07 df f1 8f 1b 4c 89 b0-f4 a4 85 5c 8b c6 01 80 |.??..L.? ??.\.?..| 0030 f6 da 2b 6f 43 dd 95 67-31 d4 e8 |??+oC?.g 1??| tls.c:117:in tds_pull_func_login tls.c:117:in tds_pull_func_login tls.c:117:in tds_pull_func_login tls.c:1049:handshake succeeded!! login.c:1005:quietly sending TDS 7+ login packet token.c:417:tds_process_login_tokens() packet.c:410:Received packet 0000 04 01 01 95 00 72 01 00-e3 1b 00 01 06 6d 00 61 |.....r.. ?....m.a| 0010 00 73 00 74 00 65 00 72-00 06 6d 00 61 00 73 00 |.s.t.e.r ..m.a.s.| 0020 74 00 65 00 72 00 ab 72-00 45 16 00 00 02 00 25 |t.e.r.?r .E.....%| 0030 00 43 00 68 00 61 00 6e-00 67 00 65 00 64 00 20 |.C.h.a.n .g.e.d. | 0040 00 64 00 61 00 74 00 61-00 62 00 61 00 73 00 65 |.d.a.t.a .b.a.s.e| 0050 00 20 00 63 00 6f 00 6e-00 74 00 65 00 78 00 74 |. .c.o.n .t.e.x.t| 0060 00 20 00 74 00 6f 00 20-00 27 00 6d 00 61 00 73 |. .t.o. .'.m.a.s| 0070 00 74 00 65 00 72 00 27-00 2e 00 0d 44 00 57 00 |.t.e.r.' ....D.W.| 0080 50 00 50 00 53 00 52 00-32 00 44 00 32 00 44 00 |P.P.S.R. 2.D.2.D.| 0090 42 00 56 00 31 00 00 01-00 00 00 e3 08 00 07 05 |B.V.1... ...?....| 00a0 09 04 d0 00 34 00 e3 17-00 02 0a 75 00 73 00 5f |..?.4.?. ...u.s._| 00b0 00 65 00 6e 00 67 00 6c-00 69 00 73 00 68 00 00 |.e.n.g.l .i.s.h..| 00c0 ab 76 00 47 16 00 00 01-00 27 00 43 00 68 00 61 |?v.G.... .'.C.h.a| 00d0 00 6e 00 67 00 65 00 64-00 20 00 6c 00 61 00 6e |.n.g.e.d . .l.a.n| 00e0 00 67 00 75 00 61 00 67-00 65 00 20 00 73 00 65 |.g.u.a.g .e. .s.e| 00f0 00 74 00 74 00 69 00 6e-00 67 00 20 00 74 00 6f |.t.t.i.n .g. .t.o| 0100 00 20 00 75 00 73 00 5f-00 65 00 6e 00 67 00 6c |. .u.s._ .e.n.g.l| 0110 00 69 00 73 00 68 00 2e-00 0d 44 00 57 00 50 00 |.i.s.h.. ..D.W.P.| 0120 50 00 53 00 52 00 32 00-44 00 32 00 44 00 42 00 |P.S.R.2. D.2.D.B.| 0130 56 00 31 00 00 01 00 00-00 ad 36 00 01 72 09 00 |V.1..... .?6..r..| 0140 02 16 4d 00 69 00 63 00-72 00 6f 00 73 00 6f 00 |..M.i.c. r.o.s.o.| 0150 66 00 74 00 20 00 53 00-51 00 4c 00 20 00 53 00 |f.t. .S. Q.L. .S.| 0160 65 00 72 00 76 00 65 00-72 00 00 00 00 00 0d 00 |e.r.v.e. r.......| 0170 15 de e3 13 00 04 04 34-00 30 00 39 00 36 00 04 |.??....4 .0.9.6..| 0180 34 00 30 00 39 00 36 00-fd 00 00 00 00 00 00 00 |4.0.9.6. ?.......| 0190 00 00 00 00 00 - |.....| token.c:421:looking for login token, got e3(ENVCHANGE) token.c:130:tds_process_default_tokens() marker is e3(ENVCHANGE) token.c:421:looking for login token, got ab(INFO) token.c:130:tds_process_default_tokens() marker is ab(INFO) mem.c:656:tds_free_all_results() token.c:2398:tds_process_info() reading message 5701 from server token.c:2493:tds_process_info() calling client msg handler odbc.c:2369:msgno 5701 20003 token.c:2510:tds_process_info() returning TDS_SUCCESS token.c:421:looking for login token, got e3(ENVCHANGE) token.c:130:tds_process_default_tokens() marker is e3(ENVCHANGE) token.c:2226:tds_process_env_chg(): 5 bytes of collation data received token.c:2227:tds->conn->collation was 0000 00 00 00 00 00 - |.....| iconv.c:825:setting server single-byte charset to "CP1252" token.c:2236:tds->conn->collation now 0000 09 04 d0 00 34 - |..?.4| token.c:421:looking for login token, got e3(ENVCHANGE) token.c:130:tds_process_default_tokens() marker is e3(ENVCHANGE) token.c:421:looking for login token, got ab(INFO) token.c:130:tds_process_default_tokens() marker is ab(INFO) mem.c:656:tds_free_all_results() token.c:2398:tds_process_info() reading message 5703 from server token.c:2493:tds_process_info() calling client msg handler odbc.c:2369:msgno 5703 20003 token.c:2510:tds_process_info() returning TDS_SUCCESS token.c:421:looking for login token, got ad(LOGINACK) token.c:347:server reports TDS version 72.9.0.2 token.c:349:Product name for 0x72090002 is 2005 token.c:383:Product version 8D0015DE token.c:421:looking for login token, got e3(ENVCHANGE) token.c:130:tds_process_default_tokens() marker is e3(ENVCHANGE) token.c:2285:changing block size from 4096 to 4096 token.c:421:looking for login token, got fd(DONE) token.c:130:tds_process_default_tokens() marker is fd(DONE) token.c:2096:tds_process_end: more_results = 0 was_cancelled = 0 error = 0 done_count_valid = 0 token.c:2115: rows_affected = 0 token.c:2118:tds_process_end() state set to TDS_IDLE token.c:444:tds_process_login_tokens() returning TDS_SUCCESS mem.c:656:tds_free_all_results() util.c:179:Changed query state from IDLE to WRITING packet.c:852:Sending packet 0000 01 01 00 48 00 00 00 00-16 00 00 00 12 00 00 00 |...H.... ........| 0010 02 00 00 00 00 00 00 00-00 00 01 00 00 00 73 00 |........ ......s.| 0020 65 00 74 00 20 00 74 00-65 00 78 00 74 00 73 00 |e.t. .t. e.x.t.s.| 0030 69 00 7a 00 65 00 20 00-32 00 30 00 30 00 30 00 |i.z.e. . 2.0.0.0.| 0040 30 00 30 00 30 00 20 00- |0.0.0. .| util.c:179:Changed query state from WRITING to PENDING token.c:554:tds_process_tokens(0x7feee5c0c710, 0x7ffee33beac0, 0x7ffee33beac4, 0x100) util.c:179:Changed query state from PENDING to READING packet.c:410:Received packet 0000 04 01 00 15 00 72 01 00-fd 00 00 be 00 00 00 00 |.....r.. ?..?....| 0010 00 00 00 00 00 - |.....| token.c:569:processing result tokens. marker is fd(DONE) token.c:2096:tds_process_end: more_results = 0 was_cancelled = 0 error = 0 done_count_valid = 0 token.c:2115: rows_affected = 0 token.c:2118:tds_process_end() state set to TDS_IDLE util.c:179:Changed query state from READING to IDLE util.c:83:logic error: cannot change query state from IDLE to PENDING util.c:179:Changed query state from IDLE to IDLE token.c:554:tds_process_tokens(0x7feee5c0c710, 0x7ffee33beac0, 0x7ffee33beac4, 0x100) token.c:557:tds_process_tokens() state is COMPLETED odbc.c:5937:SQLGetInfoW(0x7feee7016600, 23, 0x7feee5f10ca8, 2, 0x0) odbc.c:5169:_SQLGetInfo(0x7feee7016600, 23, 0x7feee5f10ca8, 2, 0x0) odbc.c:5937:SQLGetInfoW(0x7feee7016600, 24, 0x7feee5f10caa, 2, 0x0) odbc.c:5169:_SQLGetInfo(0x7feee7016600, 24, 0x7feee5f10caa, 2, 0x0) [015992.240910] alisp 1164B25C0 EXIT SQLDriverConnect with return code 0 (SQL_SUCCESS) SQLHDBC 0x7feee5f10bd0 SQLPOINTER 0x0 SQLCHAR * 0x7ffee33c6da0 SQLSMALLINT -3 (SQL_NTS) SQLCHAR * 0x7ffee33c6570 | DSN=R2D2;UID=bseely;PWD=************ | SQLSMALLINT 1024 SQLSMALLINT * 0x7ffee33c6d80 (36) SQLUSMALLINT 0 (SQL_DRIVER_NOPROMPT) [015992.240996] alisp 1164B25C0 ENTER SQLAllocHandle SQLSMALLINT 3 (SQL_HANDLE_STMT) SQLHANDLE 0x7feee5f10bd0 SQLHANDLE * 0x7ffee33c6470 odbc.c:1812:SQLAllocStmt(0x7feee7016600, 0x7feee81006a8) odbc.c:1706:_SQLAllocStmt(0x7feee7016600, 0x7feee81006a8) odbc.c:4508:SQLGetStmtAttr(0x7feee81007e0, 10010, 0x7feee8100c38, 0, 0x0) odbc.c:4508:SQLGetStmtAttr(0x7feee81007e0, 10011, 0x7feee8100c78, 0, 0x0) odbc.c:4508:SQLGetStmtAttr(0x7feee81007e0, 10012, 0x7feee8100cb8, 0, 0x0) odbc.c:4508:SQLGetStmtAttr(0x7feee81007e0, 10013, 0x7feee8100cf8, 0, 0x0) [015992.241025] alisp 1164B25C0 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 (SQL_HANDLE_STMT) SQLHANDLE 0x7feee5f10bd0 SQLHANDLE * 0x7ffee33c6470 (0x7feee8100680) [015992.241053] alisp 1164B25C0 ENTER SQLExecDirect SQLHSTMT 0x7feee8100680 SQLCHAR * 0x7ffee33c7ba0 | use pps_lrp_dev_14_11 | SQLINTEGER -3 (SQL_NTS) odbc_export.h:801:SQLExecDirectW(0x7feee81007e0, use pps_lrp_dev_14_11, -3) prepare_query.c:208:parsing 0 parameters odbc.c:3275:_SQLExecute(0x7feee81007e0) odbc.c:3292:_SQLExecute() starting with state 0 mem.c:656:tds_free_all_results() util.c:179:Changed query state from IDLE to WRITING packet.c:852:Sending packet 0000 01 01 00 48 00 00 01 00-16 00 00 00 12 00 00 00 |...H.... ........| 0010 02 00 00 00 00 00 00 00-00 00 01 00 00 00 75 00 |........ ......u.| 0020 73 00 65 00 20 00 70 00-70 00 73 00 5f 00 6c 00 |s.e. .p. p.s._.l.| 0030 72 00 70 00 5f 00 64 00-65 00 76 00 5f 00 31 00 |r.p._.d. e.v._.1.| 0040 34 00 5f 00 31 00 31 00- |4._.1.1.| util.c:179:Changed query state from WRITING to PENDING token.c:554:tds_process_tokens(0x7feee5c0c710, 0x7ffee33c7464, 0x7ffee33c7460, 0x6914) util.c:179:Changed query state from PENDING to READING packet.c:410:Received packet 0000 04 01 00 df 00 72 01 00-e3 31 00 01 11 70 00 70 |...?.r.. ?1...p.p| 0010 00 73 00 5f 00 6c 00 72-00 70 00 5f 00 64 00 65 |.s._.l.r .p._.d.e| 0020 00 76 00 5f 00 31 00 34-00 5f 00 31 00 31 00 06 |.v._.1.4 ._.1.1..| 0030 6d 00 61 00 73 00 74 00-65 00 72 00 ab 88 00 45 |m.a.s.t. e.r.?..E| 0040 16 00 00 01 00 30 00 43-00 68 00 61 00 6e 00 67 |.....0.C .h.a.n.g| 0050 00 65 00 64 00 20 00 64-00 61 00 74 00 61 00 62 |.e.d. .d .a.t.a.b| 0060 00 61 00 73 00 65 00 20-00 63 00 6f 00 6e 00 74 |.a.s.e. .c.o.n.t| 0070 00 65 00 78 00 74 00 20-00 74 00 6f 00 20 00 27 |.e.x.t. .t.o. .'| 0080 00 70 00 70 00 73 00 5f-00 6c 00 72 00 70 00 5f |.p.p.s._ .l.r.p._| 0090 00 64 00 65 00 76 00 5f-00 31 00 34 00 5f 00 31 |.d.e.v._ .1.4._.1| 00a0 00 31 00 27 00 2e 00 0d-44 00 57 00 50 00 50 00 |.1.'.... D.W.P.P.| 00b0 53 00 52 00 32 00 44 00-32 00 44 00 42 00 56 00 |S.R.2.D. 2.D.B.V.| 00c0 31 00 00 01 00 00 00 e3-08 00 07 05 09 04 c0 00 |1......? ......?.| 00d0 33 00 fd 00 00 e2 00 00-00 00 00 00 00 00 00 |3.?..?.. .......| token.c:569:processing result tokens. marker is e3(ENVCHANGE) token.c:130:tds_process_default_tokens() marker is e3(ENVCHANGE) token.c:569:processing result tokens. marker is ab(INFO) token.c:130:tds_process_default_tokens() marker is ab(INFO) mem.c:656:tds_free_all_results() token.c:2398:tds_process_info() reading message 5701 from server token.c:2493:tds_process_info() calling client msg handler odbc.c:2369:msgno 5701 20003 token.c:2510:tds_process_info() returning TDS_SUCCESS token.c:569:processing result tokens. marker is e3(ENVCHANGE) token.c:130:tds_process_default_tokens() marker is e3(ENVCHANGE) token.c:2226:tds_process_env_chg(): 5 bytes of collation data received token.c:2227:tds->conn->collation was 0000 09 04 d0 00 34 - |..?.4| iconv.c:825:setting server single-byte charset to "CP1252" token.c:2236:tds->conn->collation now 0000 09 04 c0 00 33 - |..?.3| token.c:569:processing result tokens. marker is fd(DONE) token.c:2096:tds_process_end: more_results = 0 was_cancelled = 0 error = 0 done_count_valid = 0 token.c:2115: rows_affected = 0 token.c:2118:tds_process_end() state set to TDS_IDLE util.c:179:Changed query state from READING to IDLE util.c:83:logic error: cannot change query state from IDLE to PENDING util.c:179:Changed query state from IDLE to IDLE odbc.c:3616:odbc_process_tokens: tds_process_tokens returned 0 odbc.c:3617: result_type=4052, TDS_DONE_COUNT=0, TDS_DONE_ERROR=0 odbc.c:3662:odbc_process_tokens: processed TDS_DONE_RESULT token.c:554:tds_process_tokens(0x7feee5c0c710, 0x7ffee33c7464, 0x7ffee33c7460, 0x6914) token.c:557:tds_process_tokens() state is COMPLETED odbc.c:3616:odbc_process_tokens: tds_process_tokens returned 1 odbc.c:3617: result_type=4052, TDS_DONE_COUNT=0, TDS_DONE_ERROR=0 odbc.c:3438:_SQLExecute: odbc_process_tokens returned result_type 4046 [015992.253211] alisp 1164B25C0 EXIT SQLExecDirect with return code 1 (SQL_SUCCESS_WITH_INFO) SQLHSTMT 0x7feee8100680 SQLCHAR * 0x7ffee33c7ba0 SQLINTEGER -3 (SQL_NTS) [015992.253330] alisp 1164B25C0 ENTER SQLExecDirect SQLHSTMT 0x7feee8100680 SQLCHAR * 0x7ffee33c7ba0 | select * from ppsdb_version | SQLINTEGER -3 (SQL_NTS) odbc_export.h:801:SQLExecDirectW(0x7feee81007e0, select * from ppsdb_version, -3) prepare_query.c:208:parsing 0 parameters odbc.c:3275:_SQLExecute(0x7feee81007e0) odbc.c:3292:_SQLExecute() starting with state 0 mem.c:656:tds_free_all_results() util.c:179:Changed query state from IDLE to WRITING packet.c:852:Sending packet 0000 01 01 00 54 00 00 01 00-16 00 00 00 12 00 00 00 |...T.... ........| 0010 02 00 00 00 00 00 00 00-00 00 01 00 00 00 73 00 |........ ......s.| 0020 65 00 6c 00 65 00 63 00-74 00 20 00 2a 00 20 00 |e.l.e.c. t. .*. .| 0030 66 00 72 00 6f 00 6d 00-20 00 70 00 70 00 73 00 |f.r.o.m. .p.p.s.| 0040 64 00 62 00 5f 00 76 00-65 00 72 00 73 00 69 00 |d.b._.v. e.r.s.i.| 0050 6f 00 6e 00 - |o.n.| util.c:179:Changed query state from WRITING to PENDING token.c:554:tds_process_tokens(0x7feee5c0c710, 0x7ffee33c7464, 0x7ffee33c7460, 0x6914) util.c:179:Changed query state from PENDING to READING packet.c:410:Received packet 0000 04 01 00 d0 00 72 01 00-81 04 00 00 00 00 00 08 |...?.r.. ........| 0010 00 30 02 69 00 64 00 00-00 00 00 0a 00 a7 0a 00 |.0.i.d.. .....?..| 0020 09 04 c0 00 33 0d 70 00-70 00 73 00 64 00 62 00 |..?.3.p. p.s.d.b.| 0030 5f 00 76 00 65 00 72 00-73 00 69 00 6f 00 6e 00 |_.v.e.r. s.i.o.n.| 0040 00 00 00 00 08 00 e7 34-00 09 04 c0 00 33 0a 62 |......?4 ...?.3.b| 0050 00 75 00 69 00 6c 00 64-00 5f 00 74 00 69 00 6d |.u.i.l.d ._.t.i.m| 0060 00 65 00 00 00 00 00 0a-00 a7 40 1f 09 04 c0 00 |.e...... .?@...?.| 0070 33 07 63 00 6f 00 6d 00-6d 00 65 00 6e 00 74 00 |3.c.o.m. m.e.n.t.| 0080 d1 01 07 00 50 50 53 44-42 38 36 34 00 32 00 30 |?...PPSD B864.2.0| 0090 00 32 00 30 00 2d 00 30-00 31 00 2d 00 32 00 39 |.2.0.-.0 .1.-.2.9| 00a0 00 20 00 31 00 36 00 3a-00 33 00 35 00 3a 00 33 |. .1.6.: .3.5.:.3| 00b0 00 39 00 20 00 2d 00 30-00 35 00 3a 00 30 00 30 |.9. .-.0 .5.:.0.0| 00c0 00 00 00 fd 10 00 c1 00-01 00 00 00 00 00 00 00 |...?..?. ........| token.c:569:processing result tokens. marker is 81(TDS7_RESULT) token.c:1574:processing TDS7 result metadata. mem.c:656:tds_free_all_results() token.c:1599:set current_results (4 columns) to tds->res_info token.c:1606:setting up 4 columns token.c:1543:tds7_get_data_info: colname = id type = 48 (tinyint) server's type = 48 (tinyint) column_varint_size = 0 column_size = 1 (1 on server) token.c:1543:tds7_get_data_info: colname = ppsdb_version type = 39 (varchar) server's type = 167 (xvarchar) column_varint_size = 2 column_size = 10 (10 on server) token.c:1543:tds7_get_data_info: colname = build_time type = 39 (varchar) server's type = 231 (x UCS-2 varchar) column_varint_size = 2 column_size = 52 (52 on server) token.c:1543:tds7_get_data_info: colname = comment type = 39 (varchar) server's type = 167 (xvarchar) column_varint_size = 2 column_size = 8000 (8000 on server) token.c:1615: name size/wsize type/wtype utype token.c:1616: -------------------- --------------- --------------- ------- token.c:1621: id 1/1 48/48 0 token.c:1621: ppsdb_version 10/10 39/167 0 token.c:1621: build_time 52/52 39/231 0 token.c:1621: comment 8000/8000 39/167 0 util.c:179:Changed query state from READING to PENDING odbc.c:3616:odbc_process_tokens: tds_process_tokens returned 0 odbc.c:3617: result_type=4049, TDS_DONE_COUNT=0, TDS_DONE_ERROR=0 odbc.c:3689:odbc_process_tokens: returning result_type 4049 odbc.c:3438:_SQLExecute: odbc_process_tokens returned result_type 4049 token.c:554:tds_process_tokens(0x7feee5c0c710, 0x7ffee33c7464, 0x7ffee33c7460, 0x6914) util.c:179:Changed query state from PENDING to READING token.c:569:processing result tokens. marker is d1(ROW) token.c:675:tds_process_tokens::SET_RETURN stopping on current token util.c:179:Changed query state from READING to PENDING odbc.c:3616:odbc_process_tokens: tds_process_tokens returned 0 odbc.c:3617: result_type=4040, TDS_DONE_COUNT=0, TDS_DONE_ERROR=0 odbc.c:3689:odbc_process_tokens: returning result_type 4040 odbc.c:3438:_SQLExecute: odbc_process_tokens returned result_type 4040 odbc.c:4530:SQLNumResultCols(0x7feee81007e0, 0x7ffee33c74fe) [015992.265419] alisp 1164B25C0 EXIT SQLExecDirect with return code 0 (SQL_SUCCESS) SQLHSTMT 0x7feee8100680 SQLCHAR * 0x7ffee33c7ba0 SQLINTEGER -3 (SQL_NTS) [015992.265527] alisp 1164B25C0 ENTER SQLNumResultCols SQLHSTMT 0x7feee8100680 SQLSMALLINT * 0x7ffee33c7ba0 odbc.c:4530:SQLNumResultCols(0x7feee81007e0, 0x7ffee33c763e) [015992.265539] alisp 1164B25C0 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) SQLHSTMT 0x7feee8100680 SQLSMALLINT * 0x7ffee33c7ba0 (4) [015992.265627] alisp 1164B25C0 ENTER SQLColAttribute SQLHSTMT 0x7feee8100680 SQLUSMALLINT 1 SQLUSMALLINT 1 (unknown option) SQLPOINTER 0x0 SQLINTEGER * 0 SQLSMALLINT * 0x0 SQLLEN * 0x7ffee33c7ba0 [015992.265645] alisp 1164B25C0 EXIT SQLColAttribute with return code -1 (SQL_ERROR) SQLHSTMT 0x7feee8100680 SQLUSMALLINT 1 SQLUSMALLINT 1 (unknown option) SQLPOINTER 0x0 SQLINTEGER * 0 SQLSMALLINT * 0x0 SQLLEN * 0x7ffee33c7ba0 [015992.266007] alisp 1164B25C0 ENTER SQLGetDiagRec SQLSMALLINT 3 (SQL_HANDLE_STMT) SQLHSTMT 0x7feee8100680 SQLSMALLINT 1 SQLCHAR * 0x7ffee33c7ba0 SQLINTEGER * 0x7ffee33c7bd0 SQLCHAR * 0x7ffee33c7bf0 SQLSMALLINT 512 SQLSMALLINT * 0x7ffee33c8000 error_export.h:83:SQLErrorW(0x0, 0x0, 0x7feee81007e0, 0x7ffee33c70a0, 0x7ffee33c7bd0, 0x7feeea002e00, 512, 0x7ffee33c8000) [015992.266031] alisp 1164B25C0 EXIT SQLGetDiagRec with return code 100 (SQL_NO_DATA_FOUND) SQLSMALLINT 3 (SQL_HANDLE_STMT) SQLHSTMT 0x7feee8100680 SQLSMALLINT 1 SQLCHAR * 0x7ffee33c7ba0 SQLINTEGER * 0x7ffee33c7bd0 SQLCHAR * 0x7ffee33c7bf0 SQLSMALLINT 512 SQLSMALLINT * 0x7ffee33c8000 (-30462) From freddy77 at gmail.com Wed Oct 7 06:41:45 2020 From: freddy77 at gmail.com (Frediano Ziglio) Date: Wed, 7 Oct 2020 11:41:45 +0100 Subject: [freetds] SQL_ERROR from SQLColAttribute In-Reply-To: <29067635-aa7e-c647-34d3-070ce7d83c3f@stsci.edu> References: <29067635-aa7e-c647-34d3-070ce7d83c3f@stsci.edu> Message-ID: Il giorno mer 7 ott 2020 alle ore 02:15 Bruce Seely ha scritto: > Howdy, > > Our Lisp vendor's ODBC interface stopped working with the FreeTDS 1.0 > release. > > I am trying to isolate the problem, and have a test case to show how it > fails. > > The test function performs these operations: > > - connect to R2D2 as bseely > - SQLExecDirect "use pps_lrp_dev_14_11" > - SQLExecDirect "select * from ppsdb_version" > - SQLNumResultCols > - SQLColAttribute for col #1, SQL_DESC_NAME > - SQLGetDiagRec > > > SQLExecDirect correctly accesses the database. > > The call to SQLColAttribute is returning SQL_ERROR. > > The call to SQLGetDiagRec reports that there is nothing to report. > > I have attached a combined ODBC log & TDS_DUMP log. > > The log is pretty clear, driver SQLColAttribute is just not called. Which DM is Lisp code using? Can you check which APIs libtdsodbc.so.XXX is exporting? In my Linux machine a command like objdump -T libtdsodbc.so.0.0.0 | grep SQLColAttribute is needed. Other OSes use the "nm" command. In my system I'm getting this output 00000000000166f0 g DF .text 0000000000000092 Base SQLColAttributeW 0000000000016630 g DF .text 0000000000000092 Base SQLColAttributes 00000000000166d0 g DF .text 000000000000001e Base SQLColAttribute > The SQLColAttribute call that returns SQL_ERROR is on line 513 > > There is an error on line 532 that I don't understand: > > error_export.h:83:SQLErrorW(0x0, 0x0, 0x7feee81007e0, 0x7ffee33c70a0, > 0x7ffee33c7bd0, 0x7feeea002e00, 512, 0x7ffee33c8000) > > Simply Lisp is trying to understand the error. Surprisingly SQLError is deprecated and it's odd is even called. That could sustain the fact that ODBCVER was not defined. It would be a bit inconsistent that the DM is calling wide functions but not having ODBCVER defined and bigger than 0x300 (ODBC 3.0). > If I can provide anything else that would be useful, let me know. > > > Any help or ideas would be greatly appreciated. > > > Thanks, > > Bruce > > One reason could be that ODBCVER is not defined by your system ODBC headers so SQLColAttribute is not compiled. Frediano From niklas at saers.com Wed Oct 21 10:36:06 2020 From: niklas at saers.com (Niklas Saers) Date: Wed, 21 Oct 2020 16:36:06 +0200 Subject: [freetds] OpenSSL while cross-compiling Message-ID: <8246D64F-F01F-409B-9F2B-9C111F6E7641@saers.com> Hi, I think I?ve identified a problem. I?ve built LibreSSL for iOS (arm64), iOS Simulator (x86_64 and arm64), macOS Catalyst (x86_64 and arm64) and macOS (x86_64 and arm64) (blog post - GitHub repo - binaries ), and I now want to compile FreeTDS for these architectures. But when doing so, I run into: checking for OPENSSL... no configure: error: Cannot find OpenSSL libraries However, if I take out the configure line if test "$cross_compiling" != "yes"; then I have myself a well-building freetds. Or at least, that?s what I assume. :-) Could we change this configure message to, rather than just not building for OpenSSL when cross-compiling, only accepting the passed directory value instead of also looking at /usr/local/ssl, /usr/lib/ssl, /usr/ssl, /usr/pkg, /usr/local and /usr when cross-compiling? Are there other drawbacks I?m missing? Cheers Niklas From ikorot01 at gmail.com Thu Nov 19 23:14:24 2020 From: ikorot01 at gmail.com (Igor Korot) Date: Thu, 19 Nov 2020 22:14:24 -0600 Subject: [freetds] MSVC project for freeTDS Message-ID: Hi, Is there a way to have a MSVC project for freeTDS? They all are backward compatible and can be converted from one to another up. If the library could provide one for MSVC 2010, it would be great. Thank you. From ikorot01 at gmail.com Fri Nov 20 02:39:15 2020 From: ikorot01 at gmail.com (Igor Korot) Date: Fri, 20 Nov 2020 01:39:15 -0600 Subject: [freetds] Failure to build on OSX Message-ID: Hi, (Frediano), I am trying to build freeTDS latest release on OSX 10.13 with the ODBC driver. I installed latest iODBC DM and then tried building. The log is below: [code] Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc --enable-debug --enable-odbc-wide --with-iodbc && make checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports nested variables... (cached) yes checking for gawk... (cached) awk checking for grep that handles long lines and -e... /usr/bin/grep checking whether ln -s works... yes checking for a sed that does not truncate output... /usr/bin/sed checking for pkg-config... no checking build system type... x86_64-apple-darwin17.7.0 checking host system type... x86_64-apple-darwin17.7.0 checking whether make supports the include directive... yes (GNU style) checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking whether gcc understands -c and -o together... (cached) yes checking dependency style of gcc... (cached) gcc3 checking how to run the C preprocessor... gcc -E checking for inline... inline checking how to print strings... printf checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking the maximum length of command line arguments... 196608 checking how to convert x86_64-apple-darwin17.7.0 file names to x86_64-apple-darwin17.7.0 format... func_convert_file_noop checking how to convert x86_64-apple-darwin17.7.0 file names to toolchain format... func_convert_file_noop checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... no checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for a working dd... /bin/dd checking how to truncate binary pipes... /bin/dd bs=4096 count=1 checking for mt... no checking if : is a manifest tool... no checking for dsymutil... dsymutil checking for nmedit... nmedit checking for lipo... lipo checking for otool... otool checking for otool64... no checking for -single_module linker flag... yes checking for -exported_symbols_list linker flag... yes checking for -force_load linker flag... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... yes checking for gcc option to produce PIC... -fno-common -DPIC checking if gcc PIC flag -fno-common -DPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... darwin17.7.0 dyld checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking for library containing dlopen... none required checking for dlerror... yes checking for shl_load... no checking for shl_load in -ldld... no checking for dld_link in -ldld... no checking for windres... no checking for ld... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no checking for shared library run path origin... done checking 32-bit host C ABI... no checking for the common suffixes of directories in the library search path... lib,lib checking for iconv... yes checking for working iconv... yes checking how to link with libiconv... -liconv checking for iconv declaration... extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); checking for doxygen... no checking for odbc_config... no checking for library containing socket... none required checking for library containing gethostbyname... none required checking for library containing tgetent... -lncurses checking for readline in -lreadline... yes checking for rl_on_new_line... yes checking for rl_reset_line_state... no checking for the pthreads library -lpthreads... no checking whether pthreads work without any flags... yes checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE checking if more special flags are required for pthreads... -D_THREAD_SAFE checking for library containing pthread_condattr_setclock... no checking for pthread_condattr_setclock... no checking for pthread_cond_timedwait_relative_np... yes checking for ANSI C header files... (cached) yes checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for struct tm.tm_zone... yes checking for struct tm.__tm_zone... no checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking libgen.h usability... yes checking libgen.h presence... yes checking for libgen.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking poll.h usability... yes checking poll.h presence... yes checking for poll.h... yes checking signal.h usability... yes checking signal.h presence... yes checking for signal.h... yes checking stddef.h usability... yes checking stddef.h presence... yes checking for stddef.h... yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking for sys/stat.h... (cached) yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking for sys/types.h... (cached) yes checking sys/resource.h usability... yes checking sys/resource.h presence... yes checking for sys/resource.h... yes checking sys/eventfd.h usability... no checking sys/eventfd.h presence... no checking for sys/eventfd.h... no checking sys/wait.h usability... yes checking sys/wait.h presence... yes checking for sys/wait.h... yes checking for unistd.h... (cached) yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking wchar.h usability... yes checking wchar.h presence... yes checking for wchar.h... yes checking for inttypes.h... (cached) yes checking winsock2.h usability... no checking winsock2.h presence... no checking for winsock2.h... no checking localcharset.h usability... yes checking localcharset.h presence... yes checking for localcharset.h... yes checking valgrind/memcheck.h usability... no checking valgrind/memcheck.h presence... no checking for valgrind/memcheck.h... no checking malloc.h usability... no checking malloc.h presence... no checking for malloc.h... no checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking stdbool.h usability... yes checking stdbool.h presence... yes checking for stdbool.h... yes checking gnutls/abstract.h usability... no checking gnutls/abstract.h presence... no checking for gnutls/abstract.h... no checking getopt.h usability... yes checking getopt.h presence... yes checking for getopt.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for windows.h... no checking for sql.h... no checking arpa/inet.h usability... yes checking arpa/inet.h presence... yes checking for arpa/inet.h... yes checking langinfo.h usability... yes checking langinfo.h presence... yes checking for langinfo.h... yes checking for netdb.h... (cached) yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking netinet/tcp.h usability... yes checking netinet/tcp.h presence... yes checking for netinet/tcp.h... yes checking roken.h usability... no checking roken.h presence... no checking for roken.h... no checking com_err.h usability... yes checking com_err.h presence... yes checking for com_err.h... yes checking paths.h usability... yes checking paths.h presence... yes checking for paths.h... yes checking sys/ioctl.h usability... yes checking sys/ioctl.h presence... yes checking for sys/ioctl.h... yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking whether INADDR_NONE is defined... yes checking size of char... 1 checking size of short... 2 checking size of long... 8 checking size of int... 4 checking size of float... 4 checking size of double... 8 checking size of long double... 16 checking size of long long... 8 checking size of __int64... 0 checking size of void *... 8 checking size of wchar_t... 4 checking is FIONBIO defined... yes checking for socklen_t... yes checking whether getopt has optreset support... yes checking whether byte ordering is bigendian... no checking for an ANSI C-conforming const... yes checking whether we can use -static-libgcc... no checking whether we can use -Wl,-static-libgcc... no checking whether memset(0) sets pointers to NULL... yes checking for vsnprintf... yes checking for _vsnprintf... no checking for _vscprintf... no checking for gettimeofday... yes checking for nl_langinfo... yes checking for locale_charset... no checking for setenv... yes checking for putenv... yes checking for getuid... yes checking for getpwuid... yes checking for getpwuid_r... yes checking for fstat... yes checking for alarm... yes checking for fork... yes checking for gethrtime... no checking for localtime_r... yes checking for setitimer... yes checking for eventfd... no checking for _fseeki64... no checking for _ftelli64... no checking for setrlimit... yes checking for pthread_cond_timedwait... yes checking for _lock_file... no checking for _unlock_file... no checking for usleep... yes checking for nanosleep... yes checking for readdir_r... yes checking for inet_ntoa_r... no checking for getipnodebyaddr... yes checking for getipnodebyname... yes checking for getaddrinfo... yes checking for inet_ntop... yes checking for gethostname... yes checking for poll... yes checking for socketpair... yes checking for strtok_s... no checking for asprintf... yes checking for vasprintf... yes checking for strtok_r... yes checking for readpassphrase... yes checking for strlcpy... yes checking for strlcat... yes checking for basename... yes checking for getopt... yes checking for strsep... yes checking for daemon... yes checking for _LARGEFILE_SOURCE value needed for large files... no checking for library containing clock_gettime... none required checking if clock_gettime support CLOCK_MONOTONIC... yes checking for size_t... yes checking for working alloca.h... yes checking for alloca... yes checking whether malloc_options variable is present... no checking compile-time options checking for IODBC... no configure: error: in `/Users/igorkorot/freetds': configure: error: The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables IODBC_CFLAGS and IODBC_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See `config.log' for more details Igors-MacBook-Air:freetds igorkorot$ [/code] I can successfully run the iODBC GUI. So what is going on? Thank you. From freddy77 at gmail.com Fri Nov 20 02:44:55 2020 From: freddy77 at gmail.com (Frediano Ziglio) Date: Fri, 20 Nov 2020 07:44:55 +0000 Subject: [freetds] MSVC project for freeTDS In-Reply-To: References: Message-ID: Il giorno ven 20 nov 2020 alle ore 04:16 Igor Korot ha scritto: > Hi, > Is there a way to have a MSVC project for freeTDS? > They all are backward compatible and can be converted from > one to another up. > > If the library could provide one for MSVC 2010, it would be great. > > Thank you. > Hi, you can generate MSVC projects with CMake. There used to be MSVC projects in the past but it was hard to keep them updated. Frediano From freddy77 at gmail.com Fri Nov 20 03:38:34 2020 From: freddy77 at gmail.com (Frediano Ziglio) Date: Fri, 20 Nov 2020 08:38:34 +0000 Subject: [freetds] Failure to build on OSX In-Reply-To: References: Message-ID: Il giorno ven 20 nov 2020 alle ore 07:37 Igor Korot ha scritto: > Hi, (Frediano), > I am trying to build freeTDS latest release on OSX 10.13 with the ODBC > driver. > > I installed latest iODBC DM and then tried building. > > The log is below: > > [code] > Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > --enable-debug --enable-odbc-wide --with-iodbc && make > checking for a BSD-compatible install... /usr/bin/install -c > checking whether build environment is sane... yes > checking for a thread-safe mkdir -p... ./install-sh -c -d > checking for gawk... no > checking for mawk... no > checking for nawk... no > checking for awk... awk > checking whether make sets $(MAKE)... yes > checking whether make supports nested variables... yes > checking whether make supports nested variables... (cached) yes > checking for gawk... (cached) awk > checking for grep that handles long lines and -e... /usr/bin/grep > checking whether ln -s works... yes > checking for a sed that does not truncate output... /usr/bin/sed > checking for pkg-config... no > That's not expected. Weird on a new system, but maybe is just that I have Brew installed. > checking build system type... x86_64-apple-darwin17.7.0 > checking host system type... x86_64-apple-darwin17.7.0 > checking whether make supports the include directive... yes (GNU style) > checking for gcc... gcc > ... omissis ... checking compile-time options > checking for IODBC... no > configure: error: in `/Users/igorkorot/freetds': > configure: error: The pkg-config script could not be found or is too > old. Make sure it > is in your PATH or set the PKG_CONFIG environment variable to the full > path to pkg-config. > That is the result of not founding pkg-config previously > Alternatively, you may set the environment variables IODBC_CFLAGS > and IODBC_LIBS to avoid the need to call pkg-config. > That's a workaround. Or you could try using --with-idobc= instead. In configure.ac: # The user asked for iodbc support, but didn't tell us # where to look. So, we'll try to get the info from # pkg-config. If we can't, we'll display an error. PKG_CHECK_MODULES(IODBC, libiodbc) so the configure it's behaving as expected (although it could try a bit harder). > See the pkg-config man page for more details. > > To get pkg-config, see . > See `config.log' for more details > Igors-MacBook-Air:freetds igorkorot$ > [/code] > > I can successfully run the iODBC GUI. > > So what is going on? > > Thank you. > I'll check my MacOS to see where pkg-config is and where the include files are. Frediano From ikorot01 at gmail.com Fri Nov 20 04:28:25 2020 From: ikorot01 at gmail.com (Igor Korot) Date: Fri, 20 Nov 2020 03:28:25 -0600 Subject: [freetds] Failure to build on OSX In-Reply-To: References: Message-ID: Hi, Frediano, On Fri, Nov 20, 2020 at 2:41 AM Frediano Ziglio wrote: > > Il giorno ven 20 nov 2020 alle ore 07:37 Igor Korot ha > scritto: > > > Hi, (Frediano), > > I am trying to build freeTDS latest release on OSX 10.13 with the ODBC > > driver. > > > > I installed latest iODBC DM and then tried building. > > > > The log is below: > > > > [code] > > Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > > --enable-debug --enable-odbc-wide --with-iodbc && make > > checking for a BSD-compatible install... /usr/bin/install -c > > checking whether build environment is sane... yes > > checking for a thread-safe mkdir -p... ./install-sh -c -d > > checking for gawk... no > > checking for mawk... no > > checking for nawk... no > > checking for awk... awk > > checking whether make sets $(MAKE)... yes > > checking whether make supports nested variables... yes > > checking whether make supports nested variables... (cached) yes > > checking for gawk... (cached) awk > > checking for grep that handles long lines and -e... /usr/bin/grep > > checking whether ln -s works... yes > > checking for a sed that does not truncate output... /usr/bin/sed > > checking for pkg-config... no > > > > That's not expected. Weird on a new system, but maybe is just that I have > Brew installed. Probably. I rather prefer to install official packages and not from HB. Just grabbed it from iodbc.org... > > > > checking build system type... x86_64-apple-darwin17.7.0 > > checking host system type... x86_64-apple-darwin17.7.0 > > checking whether make supports the include directive... yes (GNU style) > > checking for gcc... gcc > > > > ... omissis ... > > checking compile-time options > > checking for IODBC... no > > configure: error: in `/Users/igorkorot/freetds': > > configure: error: The pkg-config script could not be found or is too > > old. Make sure it > > is in your PATH or set the PKG_CONFIG environment variable to the full > > path to pkg-config. > > > > That is the result of not founding pkg-config previously Correct. > > > > Alternatively, you may set the environment variables IODBC_CFLAGS > > and IODBC_LIBS to avoid the need to call pkg-config. > > > > That's a workaround. Or you could try using --with-idobc= > instead. I don't know what flags that library was built with... > > In configure.ac: > > # The user asked for iodbc support, but didn't tell us > # where to look. So, we'll try to get the info from > # pkg-config. If we can't, we'll display an error. > PKG_CHECK_MODULES(IODBC, libiodbc) > > so the configure it's behaving as expected (although it could try a bit > harder). ... so I should use the path to libiodbc, right? > > > > See the pkg-config man page for more details. > > > > To get pkg-config, see . > > See `config.log' for more details > > Igors-MacBook-Air:freetds igorkorot$ > > [/code] > > > > I can successfully run the iODBC GUI. > > > > So what is going on? > > > > Thank you. > > > > I'll check my MacOS to see where pkg-config is and where the include files > are. Maybe the install is different if its downloaded from iodbc.org? Thank you. > > Frediano > _______________________________________________ > FreeTDS mailing list > FreeTDS at lists.ibiblio.org > https://lists.ibiblio.org/mailman/listinfo/freetds From ikorot01 at gmail.com Sat Nov 21 01:43:02 2020 From: ikorot01 at gmail.com (Igor Korot) Date: Sat, 21 Nov 2020 00:43:02 -0600 Subject: [freetds] Failure to build on OSX In-Reply-To: References: Message-ID: Frediano, Sorry for the top-posting. Here are my observations: The configure script requires the directory where isq On Fri, Nov 20, 2020 at 3:28 AM Igor Korot wrote: > > Hi, Frediano, > > On Fri, Nov 20, 2020 at 2:41 AM Frediano Ziglio wrote: > > > > Il giorno ven 20 nov 2020 alle ore 07:37 Igor Korot ha > > scritto: > > > > > Hi, (Frediano), > > > I am trying to build freeTDS latest release on OSX 10.13 with the ODBC > > > driver. > > > > > > I installed latest iODBC DM and then tried building. > > > > > > The log is below: > > > > > > [code] > > > Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > > > --enable-debug --enable-odbc-wide --with-iodbc && make > > > checking for a BSD-compatible install... /usr/bin/install -c > > > checking whether build environment is sane... yes > > > checking for a thread-safe mkdir -p... ./install-sh -c -d > > > checking for gawk... no > > > checking for mawk... no > > > checking for nawk... no > > > checking for awk... awk > > > checking whether make sets $(MAKE)... yes > > > checking whether make supports nested variables... yes > > > checking whether make supports nested variables... (cached) yes > > > checking for gawk... (cached) awk > > > checking for grep that handles long lines and -e... /usr/bin/grep > > > checking whether ln -s works... yes > > > checking for a sed that does not truncate output... /usr/bin/sed > > > checking for pkg-config... no > > > > > > > That's not expected. Weird on a new system, but maybe is just that I have > > Brew installed. > > Probably. > I rather prefer to install official packages and not from HB. > > Just grabbed it from iodbc.org... > > > > > > > > checking build system type... x86_64-apple-darwin17.7.0 > > > checking host system type... x86_64-apple-darwin17.7.0 > > > checking whether make supports the include directive... yes (GNU style) > > > checking for gcc... gcc > > > > > > > ... omissis ... > > > > checking compile-time options > > > checking for IODBC... no > > > configure: error: in `/Users/igorkorot/freetds': > > > configure: error: The pkg-config script could not be found or is too > > > old. Make sure it > > > is in your PATH or set the PKG_CONFIG environment variable to the full > > > path to pkg-config. > > > > > > > That is the result of not founding pkg-config previously > > Correct. > > > > > > > > Alternatively, you may set the environment variables IODBC_CFLAGS > > > and IODBC_LIBS to avoid the need to call pkg-config. > > > > > > > That's a workaround. Or you could try using --with-idobc= > > instead. > > I don't know what flags that library was built with... > > > > > In configure.ac: > > > > # The user asked for iodbc support, but didn't tell us > > # where to look. So, we'll try to get the info from > > # pkg-config. If we can't, we'll display an error. > > PKG_CHECK_MODULES(IODBC, libiodbc) > > > > so the configure it's behaving as expected (although it could try a bit > > harder). > > ... so I should use the path to libiodbc, right? > > > > > > > > See the pkg-config man page for more details. > > > > > > To get pkg-config, see . > > > See `config.log' for more details > > > Igors-MacBook-Air:freetds igorkorot$ > > > [/code] > > > > > > I can successfully run the iODBC GUI. > > > > > > So what is going on? > > > > > > Thank you. > > > > > > > I'll check my MacOS to see where pkg-config is and where the include files > > are. > > Maybe the install is different if its downloaded from iodbc.org? > > Thank you. > > > > > Frediano > > _______________________________________________ > > FreeTDS mailing list > > FreeTDS at lists.ibiblio.org > > https://lists.ibiblio.org/mailman/listinfo/freetds From ikorot01 at gmail.com Sat Nov 21 01:48:56 2020 From: ikorot01 at gmail.com (Igor Korot) Date: Sat, 21 Nov 2020 00:48:56 -0600 Subject: [freetds] Failure to build on OSX In-Reply-To: References: Message-ID: Sorry, I accidentally hit "Send"... Frediano, Sorry for the top-posting. Here are my observations: The configure script requires the directory where isql.h is On my system is in: [code] Igors-MacBook-Air:/ igorkorot$ find . -name isql.h find: ./usr/sbin/authserver: Permission denied ./usr/local/iODBC/include/isql.h find: ./.Spotlight-V100: Permission denied find: ./Library/Application Support/Apple/ParentalControls/Users: Permission denied find: ./Library/Application Support/Apple/AssetCache/Data: Permission denied find: ./Library/Application Support/ApplePushService: Permission denied ./Library/Frameworks/iODBC.framework/Versions/3.52/Headers/isql.h [/code] And so running: [code] Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc --enable-debug --enable-odbc-wide --with-iodbc=/usr/local/iODBC/ [/code] succeeded. However, running "make" after that, results in: [code] Making all in odbc /Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive Making all in . CC odbc.lo In file included from odbc.c:38: In file included from ../../include/freetds/odbc.h:36: /usr/local/iODBC//include/isql.h:84:10: fatal error: 'iODBC/sql.h' file not found #include ^~~~~~~~~~~~~ 1 error generated. make[4]: *** [odbc.lo] Error 1 make[3]: *** [all-recursive] Error 1 make[2]: *** [all] Error 2 make[1]: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1 [/code] So, any help fixing this/properly running configure & make? Thank you. > On Fri, Nov 20, 2020 at 3:28 AM Igor Korot wrote: > > > > Hi, Frediano, > > > > On Fri, Nov 20, 2020 at 2:41 AM Frediano Ziglio wrote: > > > > > > Il giorno ven 20 nov 2020 alle ore 07:37 Igor Korot ha > > > scritto: > > > > > > > Hi, (Frediano), > > > > I am trying to build freeTDS latest release on OSX 10.13 with the ODBC > > > > driver. > > > > > > > > I installed latest iODBC DM and then tried building. > > > > > > > > The log is below: > > > > > > > > [code] > > > > Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > > > > --enable-debug --enable-odbc-wide --with-iodbc && make > > > > checking for a BSD-compatible install... /usr/bin/install -c > > > > checking whether build environment is sane... yes > > > > checking for a thread-safe mkdir -p... ./install-sh -c -d > > > > checking for gawk... no > > > > checking for mawk... no > > > > checking for nawk... no > > > > checking for awk... awk > > > > checking whether make sets $(MAKE)... yes > > > > checking whether make supports nested variables... yes > > > > checking whether make supports nested variables... (cached) yes > > > > checking for gawk... (cached) awk > > > > checking for grep that handles long lines and -e... /usr/bin/grep > > > > checking whether ln -s works... yes > > > > checking for a sed that does not truncate output... /usr/bin/sed > > > > checking for pkg-config... no > > > > > > > > > > That's not expected. Weird on a new system, but maybe is just that I have > > > Brew installed. > > > > Probably. > > I rather prefer to install official packages and not from HB. > > > > Just grabbed it from iodbc.org... > > > > > > > > > > > > checking build system type... x86_64-apple-darwin17.7.0 > > > > checking host system type... x86_64-apple-darwin17.7.0 > > > > checking whether make supports the include directive... yes (GNU style) > > > > checking for gcc... gcc > > > > > > > > > > ... omissis ... > > > > > > checking compile-time options > > > > checking for IODBC... no > > > > configure: error: in `/Users/igorkorot/freetds': > > > > configure: error: The pkg-config script could not be found or is too > > > > old. Make sure it > > > > is in your PATH or set the PKG_CONFIG environment variable to the full > > > > path to pkg-config. > > > > > > > > > > That is the result of not founding pkg-config previously > > > > Correct. > > > > > > > > > > > > Alternatively, you may set the environment variables IODBC_CFLAGS > > > > and IODBC_LIBS to avoid the need to call pkg-config. > > > > > > > > > > That's a workaround. Or you could try using --with-idobc= > > > instead. > > > > I don't know what flags that library was built with... > > > > > > > > In configure.ac: > > > > > > # The user asked for iodbc support, but didn't tell us > > > # where to look. So, we'll try to get the info from > > > # pkg-config. If we can't, we'll display an error. > > > PKG_CHECK_MODULES(IODBC, libiodbc) > > > > > > so the configure it's behaving as expected (although it could try a bit > > > harder). > > > > ... so I should use the path to libiodbc, right? > > > > > > > > > > > > See the pkg-config man page for more details. > > > > > > > > To get pkg-config, see . > > > > See `config.log' for more details > > > > Igors-MacBook-Air:freetds igorkorot$ > > > > [/code] > > > > > > > > I can successfully run the iODBC GUI. > > > > > > > > So what is going on? > > > > > > > > Thank you. > > > > > > > > > > I'll check my MacOS to see where pkg-config is and where the include files > > > are. > > > > Maybe the install is different if its downloaded from iodbc.org? > > > > Thank you. > > > > > > > > Frediano > > > _______________________________________________ > > > FreeTDS mailing list > > > FreeTDS at lists.ibiblio.org > > > https://lists.ibiblio.org/mailman/listinfo/freetds From freddy77 at gmail.com Sun Nov 22 12:31:07 2020 From: freddy77 at gmail.com (Frediano Ziglio) Date: Sun, 22 Nov 2020 17:31:07 +0000 Subject: [freetds] Failure to build on OSX In-Reply-To: References: Message-ID: Il giorno sab 21 nov 2020 alle ore 06:46 Igor Korot ha scritto: > Sorry, I accidentally hit "Send"... > > Frediano, > Sorry for the top-posting. > Here are my observations: > > The configure script requires the directory where isql.h is > > On my system is in: > > [code] > Igors-MacBook-Air:/ igorkorot$ find . -name isql.h > find: ./usr/sbin/authserver: Permission denied > ./usr/local/iODBC/include/isql.h > find: ./.Spotlight-V100: Permission denied > find: ./Library/Application Support/Apple/ParentalControls/Users: > Permission denied > find: ./Library/Application Support/Apple/AssetCache/Data: Permission > denied > find: ./Library/Application Support/ApplePushService: Permission denied > ./Library/Frameworks/iODBC.framework/Versions/3.52/Headers/isql.h > [/code] > > And so running: > > [code] > Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > --enable-debug --enable-odbc-wide --with-iodbc=/usr/local/iODBC/ > [/code] > > succeeded. > > However, running "make" after that, results in: > > [code] > Making all in odbc > /Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive > Making all in . > CC odbc.lo > In file included from odbc.c:38: > In file included from ../../include/freetds/odbc.h:36: > /usr/local/iODBC//include/isql.h:84:10: fatal error: 'iODBC/sql.h' > file not found > #include > ^~~~~~~~~~~~~ > 1 error generated. > make[4]: *** [odbc.lo] Error 1 > make[3]: *** [all-recursive] Error 1 > make[2]: *** [all] Error 2 > make[1]: *** [all-recursive] Error 1 > make: *** [all-recursive] Error 1 > [/code] > > So, any help fixing this/properly running configure & make? > > Thank you. > > Hi, it looks like MacOS is pretty weird. Also the installation of iODBC is not that coherent. There's a iodbc-config I tried to use but is pretty useless as it uses "normal" Unix arguments (-L, -I, etc) while iODBC is installed using MacOS frameworks. I "solved" using these commands: $ IODBC_CFLAGS='-I/usr/local/iODBC/include -F/Library/Frameworks -framework iODBC -framework iODBCinst' $ export IODBC_CFLAGS $ IODBC_LIBS='-I/usr/local/iODBC/include -F/Library/Frameworks -framework iODBC -framework iODBCinst' $ export IODBC_LIBS $ ./configure --with-iodbc (yes, the 2 environments are duplicated) it compiles (not currently tested) although otool -L is reporting that 2 iodbc libraries are imported (it should import only one). I found on the internet a discussion where somebody wrote that a patch was in progress (in May) but I installed last iODBC and it still has the issue. I don't have much MacOS knowledge to suggest the final method, not sure if this is the best way to solve the issue. Frediano > > > On Fri, Nov 20, 2020 at 3:28 AM Igor Korot wrote: > > > > > > Hi, Frediano, > > > > > > On Fri, Nov 20, 2020 at 2:41 AM Frediano Ziglio > wrote: > > > > > > > > Il giorno ven 20 nov 2020 alle ore 07:37 Igor Korot < > ikorot01 at gmail.com> ha > > > > scritto: > > > > > > > > > Hi, (Frediano), > > > > > I am trying to build freeTDS latest release on OSX 10.13 with the > ODBC > > > > > driver. > > > > > > > > > > I installed latest iODBC DM and then tried building. > > > > > > > > > > The log is below: > > > > > > > > > > [code] > > > > > Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > > > > > --enable-debug --enable-odbc-wide --with-iodbc && make > > > > > checking for a BSD-compatible install... /usr/bin/install -c > > > > > checking whether build environment is sane... yes > > > > > checking for a thread-safe mkdir -p... ./install-sh -c -d > > > > > checking for gawk... no > > > > > checking for mawk... no > > > > > checking for nawk... no > > > > > checking for awk... awk > > > > > checking whether make sets $(MAKE)... yes > > > > > checking whether make supports nested variables... yes > > > > > checking whether make supports nested variables... (cached) yes > > > > > checking for gawk... (cached) awk > > > > > checking for grep that handles long lines and -e... /usr/bin/grep > > > > > checking whether ln -s works... yes > > > > > checking for a sed that does not truncate output... /usr/bin/sed > > > > > checking for pkg-config... no > > > > > > > > > > > > > That's not expected. Weird on a new system, but maybe is just that I > have > > > > Brew installed. > > > > > > Probably. > > > I rather prefer to install official packages and not from HB. > > > > > > Just grabbed it from iodbc.org... > > > > > > > > > > > > > > > > checking build system type... x86_64-apple-darwin17.7.0 > > > > > checking host system type... x86_64-apple-darwin17.7.0 > > > > > checking whether make supports the include directive... yes (GNU > style) > > > > > checking for gcc... gcc > > > > > > > > > > > > > ... omissis ... > > > > > > > > checking compile-time options > > > > > checking for IODBC... no > > > > > configure: error: in `/Users/igorkorot/freetds': > > > > > configure: error: The pkg-config script could not be found or is > too > > > > > old. Make sure it > > > > > is in your PATH or set the PKG_CONFIG environment variable to the > full > > > > > path to pkg-config. > > > > > > > > > > > > > That is the result of not founding pkg-config previously > > > > > > Correct. > > > > > > > > > > > > > > > > Alternatively, you may set the environment variables IODBC_CFLAGS > > > > > and IODBC_LIBS to avoid the need to call pkg-config. > > > > > > > > > > > > > That's a workaround. Or you could try using --with-idobc= > > > > instead. > > > > > > I don't know what flags that library was built with... > > > > > > > > > > > In configure.ac: > > > > > > > > # The user asked for iodbc support, but didn't tell us > > > > # where to look. So, we'll try to get the info from > > > > # pkg-config. If we can't, we'll display an error. > > > > PKG_CHECK_MODULES(IODBC, libiodbc) > > > > > > > > so the configure it's behaving as expected (although it could try a > bit > > > > harder). > > > > > > ... so I should use the path to libiodbc, right? > > > > > > > > > > > > > > > > See the pkg-config man page for more details. > > > > > > > > > > To get pkg-config, see . > > > > > See `config.log' for more details > > > > > Igors-MacBook-Air:freetds igorkorot$ > > > > > [/code] > > > > > > > > > > I can successfully run the iODBC GUI. > > > > > > > > > > So what is going on? > > > > > > > > > > Thank you. > > > > > > > > > > > > > I'll check my MacOS to see where pkg-config is and where the include > files > > > > are. > > > > > > Maybe the install is different if its downloaded from iodbc.org? > > > > > > Thank you. > > > > > > > > > > > Frediano > > > > _______________________________________________ > > > > FreeTDS mailing list > > > > FreeTDS at lists.ibiblio.org > > > > https://lists.ibiblio.org/mailman/listinfo/freetds > _______________________________________________ > FreeTDS mailing list > FreeTDS at lists.ibiblio.org > https://lists.ibiblio.org/mailman/listinfo/freetds > From merlereinhart at mac.com Mon Nov 23 09:25:02 2020 From: merlereinhart at mac.com (Merle Reinhart) Date: Mon, 23 Nov 2020 09:25:02 -0500 Subject: [freetds] Failure to build on OSX In-Reply-To: References: Message-ID: Igor, I have not had any issues building either libiodbc or freetds on Mac OS X . libiodbc: sh autogen.sh ./configure --prefix=/usr/local/iodbc --with-iodbc-inidir=/Library/ODBC --disable-gui --disable-libodbc CFLAGS="-arch x86-64" CC="gcc-9" make sudo make install I stick it in a separate directory in /usr/local/ to make it easier for me to maintain, but that is just me. --with-iodbc-inidir=/Library/ODBC to make it more compatible with the way other apps tend to expect the ODBC configuration files --disable-gui to not bother with the gui and likely the frameworks which just complicates things, ie, I just treat it as a normal unix build --disable-libodbc since for my uses libiodbc had to coexist beside the unixodbc library CFLAGS and -arch x86-64 is just a holdover from years ago where I had to build both 32 and 64 bit libraries CC="gcc-9" I found years ago that the actual gnu c compiler worked better than Apple gcc compatibility wrapper around clang Last time I built it was this past August on macOS Mojave (Xcode 10.3) with iODBC 3.52.13. freetds then builds for me with out issues. ./configure --with-iodbc=/usr/local/iodbc --prefix=/usr/local/freetds --with-libiconv-prefix=/opt/sw -disable-debug --disable-server --disable-pool --enable-krb5 --enable-sspi CC=clang CFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" --with-libiconv-prefix=/opt/sw I use the libiconv from the Fink software manager as I've had fewer issues with the more recent version it provides --disable-debug, -server, -pool I don't need these, so I explicitly disable them --enable-krb5 we use Kerberos database authentication --enable-sspi doesn't really matter on macOS CC=clang direct clang and not the Apple gcc compatibility wrapper seems to work a little bit better for me -arch x86_64 again is just a holdover from years ago when I had to build both 32 and 64 bit libraries Last time I built it was this past August on macOS Mojave (Xcode 10.3) with Freetds 1.0.48 and 1.1.24. Hopefully, this helps. Merle > On Nov 22, 2020, at 12:31 PM, Frediano Ziglio wrote: > > Il giorno sab 21 nov 2020 alle ore 06:46 Igor Korot ha > scritto: > >> Sorry, I accidentally hit "Send"... >> >> Frediano, >> Sorry for the top-posting. >> Here are my observations: >> >> The configure script requires the directory where isql.h is >> >> On my system is in: >> >> [code] >> Igors-MacBook-Air:/ igorkorot$ find . -name isql.h >> find: ./usr/sbin/authserver: Permission denied >> ./usr/local/iODBC/include/isql.h >> find: ./.Spotlight-V100: Permission denied >> find: ./Library/Application Support/Apple/ParentalControls/Users: >> Permission denied >> find: ./Library/Application Support/Apple/AssetCache/Data: Permission >> denied >> find: ./Library/Application Support/ApplePushService: Permission denied >> ./Library/Frameworks/iODBC.framework/Versions/3.52/Headers/isql.h >> [/code] >> >> And so running: >> >> [code] >> Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc >> --enable-debug --enable-odbc-wide --with-iodbc=/usr/local/iODBC/ >> [/code] >> >> succeeded. >> >> However, running "make" after that, results in: >> >> [code] >> Making all in odbc >> /Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive >> Making all in . >> CC odbc.lo >> In file included from odbc.c:38: >> In file included from ../../include/freetds/odbc.h:36: >> /usr/local/iODBC//include/isql.h:84:10: fatal error: 'iODBC/sql.h' >> file not found >> #include >> ^~~~~~~~~~~~~ >> 1 error generated. >> make[4]: *** [odbc.lo] Error 1 >> make[3]: *** [all-recursive] Error 1 >> make[2]: *** [all] Error 2 >> make[1]: *** [all-recursive] Error 1 >> make: *** [all-recursive] Error 1 >> [/code] >> >> So, any help fixing this/properly running configure & make? >> >> Thank you. >> >> > Hi, > it looks like MacOS is pretty weird. Also the installation of iODBC is > not that coherent. > There's a iodbc-config I tried to use but is pretty useless as it uses > "normal" Unix arguments (-L, -I, etc) while > iODBC is installed using MacOS frameworks. I "solved" using these commands: > > $ IODBC_CFLAGS='-I/usr/local/iODBC/include -F/Library/Frameworks -framework > iODBC -framework iODBCinst' > $ export IODBC_CFLAGS > $ IODBC_LIBS='-I/usr/local/iODBC/include -F/Library/Frameworks -framework > iODBC -framework iODBCinst' > $ export IODBC_LIBS > $ ./configure --with-iodbc > > (yes, the 2 environments are duplicated) > > it compiles (not currently tested) although otool -L is reporting that 2 > iodbc libraries are imported (it should > import only one). > > I found on the internet a discussion where somebody wrote that a patch was > in progress (in May) but I installed > last iODBC and it still has the issue. > > I don't have much MacOS knowledge to suggest the final method, not sure if > this is the best way to > solve the issue. > > Frediano > > >> >>> On Fri, Nov 20, 2020 at 3:28 AM Igor Korot wrote: >>>> >>>> Hi, Frediano, >>>> >>>> On Fri, Nov 20, 2020 at 2:41 AM Frediano Ziglio >> wrote: >>>>> >>>>> Il giorno ven 20 nov 2020 alle ore 07:37 Igor Korot < >> ikorot01 at gmail.com> ha >>>>> scritto: >>>>> >>>>>> Hi, (Frediano), >>>>>> I am trying to build freeTDS latest release on OSX 10.13 with the >> ODBC >>>>>> driver. >>>>>> >>>>>> I installed latest iODBC DM and then tried building. >>>>>> >>>>>> The log is below: >>>>>> >>>>>> [code] >>>>>> Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc >>>>>> --enable-debug --enable-odbc-wide --with-iodbc && make >>>>>> checking for a BSD-compatible install... /usr/bin/install -c >>>>>> checking whether build environment is sane... yes >>>>>> checking for a thread-safe mkdir -p... ./install-sh -c -d >>>>>> checking for gawk... no >>>>>> checking for mawk... no >>>>>> checking for nawk... no >>>>>> checking for awk... awk >>>>>> checking whether make sets $(MAKE)... yes >>>>>> checking whether make supports nested variables... yes >>>>>> checking whether make supports nested variables... (cached) yes >>>>>> checking for gawk... (cached) awk >>>>>> checking for grep that handles long lines and -e... /usr/bin/grep >>>>>> checking whether ln -s works... yes >>>>>> checking for a sed that does not truncate output... /usr/bin/sed >>>>>> checking for pkg-config... no >>>>>> >>>>> >>>>> That's not expected. Weird on a new system, but maybe is just that I >> have >>>>> Brew installed. >>>> >>>> Probably. >>>> I rather prefer to install official packages and not from HB. >>>> >>>> Just grabbed it from iodbc.org... >>>> >>>>> >>>>> >>>>>> checking build system type... x86_64-apple-darwin17.7.0 >>>>>> checking host system type... x86_64-apple-darwin17.7.0 >>>>>> checking whether make supports the include directive... yes (GNU >> style) >>>>>> checking for gcc... gcc >>>>>> >>>>> >>>>> ... omissis ... >>>>> >>>>> checking compile-time options >>>>>> checking for IODBC... no >>>>>> configure: error: in `/Users/igorkorot/freetds': >>>>>> configure: error: The pkg-config script could not be found or is >> too >>>>>> old. Make sure it >>>>>> is in your PATH or set the PKG_CONFIG environment variable to the >> full >>>>>> path to pkg-config. >>>>>> >>>>> >>>>> That is the result of not founding pkg-config previously >>>> >>>> Correct. >>>> >>>>> >>>>> >>>>>> Alternatively, you may set the environment variables IODBC_CFLAGS >>>>>> and IODBC_LIBS to avoid the need to call pkg-config. >>>>>> >>>>> >>>>> That's a workaround. Or you could try using --with-idobc= >>>>> instead. >>>> >>>> I don't know what flags that library was built with... >>>> >>>>> >>>>> In configure.ac: >>>>> >>>>> # The user asked for iodbc support, but didn't tell us >>>>> # where to look. So, we'll try to get the info from >>>>> # pkg-config. If we can't, we'll display an error. >>>>> PKG_CHECK_MODULES(IODBC, libiodbc) >>>>> >>>>> so the configure it's behaving as expected (although it could try a >> bit >>>>> harder). >>>> >>>> ... so I should use the path to libiodbc, right? >>>> >>>>> >>>>> >>>>>> See the pkg-config man page for more details. >>>>>> >>>>>> To get pkg-config, see . >>>>>> See `config.log' for more details >>>>>> Igors-MacBook-Air:freetds igorkorot$ >>>>>> [/code] >>>>>> >>>>>> I can successfully run the iODBC GUI. >>>>>> >>>>>> So what is going on? >>>>>> >>>>>> Thank you. >>>>>> >>>>> >>>>> I'll check my MacOS to see where pkg-config is and where the include >> files >>>>> are. >>>> >>>> Maybe the install is different if its downloaded from iodbc.org? >>>> >>>> Thank you. >>>> >>>>> >>>>> Frediano >>>>> _______________________________________________ >>>>> FreeTDS mailing list >>>>> FreeTDS at lists.ibiblio.org >>>>> https://lists.ibiblio.org/mailman/listinfo/freetds >> _______________________________________________ >> FreeTDS mailing list >> FreeTDS at lists.ibiblio.org >> https://lists.ibiblio.org/mailman/listinfo/freetds >> > _______________________________________________ > FreeTDS mailing list > FreeTDS at lists.ibiblio.org > https://lists.ibiblio.org/mailman/listinfo/freetds From ikorot01 at gmail.com Tue Nov 24 12:25:43 2020 From: ikorot01 at gmail.com (Igor Korot) Date: Tue, 24 Nov 2020 11:25:43 -0600 Subject: [freetds] Failure to build on OSX In-Reply-To: References: Message-ID: Hi, On Tue, Nov 24, 2020, 10:47 AM Merle Reinhart via FreeTDS < freetds at lists.ibiblio.org> wrote: > Igor, > > I have not had any issues building either libiodbc or freetds on Mac OS X Problem is - I didn't build iODBC - I installed it by grabbing it from download section of iodbc site and ran the installer. Thank you. . > > libiodbc: > sh autogen.sh > ./configure --prefix=/usr/local/iodbc --with-iodbc-inidir=/Library/ODBC > --disable-gui --disable-libodbc CFLAGS="-arch x86-64" CC="gcc-9" > make > sudo make install > > I stick it in a separate directory in /usr/local/ to make it easier for me > to maintain, but that is just me. > --with-iodbc-inidir=/Library/ODBC to make it more compatible with the way > other apps tend to expect the ODBC configuration files > --disable-gui to not bother with the gui and likely the frameworks which > just complicates things, ie, I just treat it as a normal unix build > --disable-libodbc since for my uses libiodbc had to coexist beside the > unixodbc library > CFLAGS and -arch x86-64 is just a holdover from years ago where I had to > build both 32 and 64 bit libraries > CC="gcc-9" I found years ago that the actual gnu c compiler worked better > than Apple gcc compatibility wrapper around clang > > Last time I built it was this past August on macOS Mojave (Xcode 10.3) > with iODBC 3.52.13. > > > freetds then builds for me with out issues. > > ./configure --with-iodbc=/usr/local/iodbc --prefix=/usr/local/freetds > --with-libiconv-prefix=/opt/sw -disable-debug --disable-server > --disable-pool --enable-krb5 --enable-sspi CC=clang CFLAGS="-arch x86_64" > LDFLAGS="-arch x86_64" > > --with-libiconv-prefix=/opt/sw I use the libiconv from the Fink software > manager as I've had fewer issues with the more recent version it provides > --disable-debug, -server, -pool I don't need these, so I explicitly > disable them > --enable-krb5 we use Kerberos database authentication > --enable-sspi doesn't really matter on macOS > CC=clang direct clang and not the Apple gcc compatibility wrapper seems to > work a little bit better for me > -arch x86_64 again is just a holdover from years ago when I had to build > both 32 and 64 bit libraries > > Last time I built it was this past August on macOS Mojave (Xcode 10.3) > with Freetds 1.0.48 and 1.1.24. > > > Hopefully, this helps. > > Merle > > > > > > On Nov 22, 2020, at 12:31 PM, Frediano Ziglio > wrote: > > > > Il giorno sab 21 nov 2020 alle ore 06:46 Igor Korot > ha > > scritto: > > > >> Sorry, I accidentally hit "Send"... > >> > >> Frediano, > >> Sorry for the top-posting. > >> Here are my observations: > >> > >> The configure script requires the directory where isql.h is > >> > >> On my system is in: > >> > >> [code] > >> Igors-MacBook-Air:/ igorkorot$ find . -name isql.h > >> find: ./usr/sbin/authserver: Permission denied > >> ./usr/local/iODBC/include/isql.h > >> find: ./.Spotlight-V100: Permission denied > >> find: ./Library/Application Support/Apple/ParentalControls/Users: > >> Permission denied > >> find: ./Library/Application Support/Apple/AssetCache/Data: Permission > >> denied > >> find: ./Library/Application Support/ApplePushService: Permission denied > >> ./Library/Frameworks/iODBC.framework/Versions/3.52/Headers/isql.h > >> [/code] > >> > >> And so running: > >> > >> [code] > >> Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > >> --enable-debug --enable-odbc-wide --with-iodbc=/usr/local/iODBC/ > >> [/code] > >> > >> succeeded. > >> > >> However, running "make" after that, results in: > >> > >> [code] > >> Making all in odbc > >> /Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive > >> Making all in . > >> CC odbc.lo > >> In file included from odbc.c:38: > >> In file included from ../../include/freetds/odbc.h:36: > >> /usr/local/iODBC//include/isql.h:84:10: fatal error: 'iODBC/sql.h' > >> file not found > >> #include > >> ^~~~~~~~~~~~~ > >> 1 error generated. > >> make[4]: *** [odbc.lo] Error 1 > >> make[3]: *** [all-recursive] Error 1 > >> make[2]: *** [all] Error 2 > >> make[1]: *** [all-recursive] Error 1 > >> make: *** [all-recursive] Error 1 > >> [/code] > >> > >> So, any help fixing this/properly running configure & make? > >> > >> Thank you. > >> > >> > > Hi, > > it looks like MacOS is pretty weird. Also the installation of iODBC is > > not that coherent. > > There's a iodbc-config I tried to use but is pretty useless as it uses > > "normal" Unix arguments (-L, -I, etc) while > > iODBC is installed using MacOS frameworks. I "solved" using these > commands: > > > > $ IODBC_CFLAGS='-I/usr/local/iODBC/include -F/Library/Frameworks > -framework > > iODBC -framework iODBCinst' > > $ export IODBC_CFLAGS > > $ IODBC_LIBS='-I/usr/local/iODBC/include -F/Library/Frameworks -framework > > iODBC -framework iODBCinst' > > $ export IODBC_LIBS > > $ ./configure --with-iodbc > > > > (yes, the 2 environments are duplicated) > > > > it compiles (not currently tested) although otool -L is reporting that 2 > > iodbc libraries are imported (it should > > import only one). > > > > I found on the internet a discussion where somebody wrote that a patch > was > > in progress (in May) but I installed > > last iODBC and it still has the issue. > > > > I don't have much MacOS knowledge to suggest the final method, not sure > if > > this is the best way to > > solve the issue. > > > > Frediano > > > > > >> > >>> On Fri, Nov 20, 2020 at 3:28 AM Igor Korot wrote: > >>>> > >>>> Hi, Frediano, > >>>> > >>>> On Fri, Nov 20, 2020 at 2:41 AM Frediano Ziglio > >> wrote: > >>>>> > >>>>> Il giorno ven 20 nov 2020 alle ore 07:37 Igor Korot < > >> ikorot01 at gmail.com> ha > >>>>> scritto: > >>>>> > >>>>>> Hi, (Frediano), > >>>>>> I am trying to build freeTDS latest release on OSX 10.13 with the > >> ODBC > >>>>>> driver. > >>>>>> > >>>>>> I installed latest iODBC DM and then tried building. > >>>>>> > >>>>>> The log is below: > >>>>>> > >>>>>> [code] > >>>>>> Igors-MacBook-Air:freetds igorkorot$ ./configure --enable-odbc > >>>>>> --enable-debug --enable-odbc-wide --with-iodbc && make > >>>>>> checking for a BSD-compatible install... /usr/bin/install -c > >>>>>> checking whether build environment is sane... yes > >>>>>> checking for a thread-safe mkdir -p... ./install-sh -c -d > >>>>>> checking for gawk... no > >>>>>> checking for mawk... no > >>>>>> checking for nawk... no > >>>>>> checking for awk... awk > >>>>>> checking whether make sets $(MAKE)... yes > >>>>>> checking whether make supports nested variables... yes > >>>>>> checking whether make supports nested variables... (cached) yes > >>>>>> checking for gawk... (cached) awk > >>>>>> checking for grep that handles long lines and -e... /usr/bin/grep > >>>>>> checking whether ln -s works... yes > >>>>>> checking for a sed that does not truncate output... /usr/bin/sed > >>>>>> checking for pkg-config... no > >>>>>> > >>>>> > >>>>> That's not expected. Weird on a new system, but maybe is just that I > >> have > >>>>> Brew installed. > >>>> > >>>> Probably. > >>>> I rather prefer to install official packages and not from HB. > >>>> > >>>> Just grabbed it from iodbc.org... > >>>> > >>>>> > >>>>> > >>>>>> checking build system type... x86_64-apple-darwin17.7.0 > >>>>>> checking host system type... x86_64-apple-darwin17.7.0 > >>>>>> checking whether make supports the include directive... yes (GNU > >> style) > >>>>>> checking for gcc... gcc > >>>>>> > >>>>> > >>>>> ... omissis ... > >>>>> > >>>>> checking compile-time options > >>>>>> checking for IODBC... no > >>>>>> configure: error: in `/Users/igorkorot/freetds': > >>>>>> configure: error: The pkg-config script could not be found or is > >> too > >>>>>> old. Make sure it > >>>>>> is in your PATH or set the PKG_CONFIG environment variable to the > >> full > >>>>>> path to pkg-config. > >>>>>> > >>>>> > >>>>> That is the result of not founding pkg-config previously > >>>> > >>>> Correct. > >>>> > >>>>> > >>>>> > >>>>>> Alternatively, you may set the environment variables IODBC_CFLAGS > >>>>>> and IODBC_LIBS to avoid the need to call pkg-config. > >>>>>> > >>>>> > >>>>> That's a workaround. Or you could try using --with-idobc= > >>>>> instead. > >>>> > >>>> I don't know what flags that library was built with... > >>>> > >>>>> > >>>>> In configure.ac: > >>>>> > >>>>> # The user asked for iodbc support, but didn't tell us > >>>>> # where to look. So, we'll try to get the info from > >>>>> # pkg-config. If we can't, we'll display an error. > >>>>> PKG_CHECK_MODULES(IODBC, libiodbc) > >>>>> > >>>>> so the configure it's behaving as expected (although it could try a > >> bit > >>>>> harder). > >>>> > >>>> ... so I should use the path to libiodbc, right? > >>>> > >>>>> > >>>>> > >>>>>> See the pkg-config man page for more details. > >>>>>> > >>>>>> To get pkg-config, see . > >>>>>> See `config.log' for more details > >>>>>> Igors-MacBook-Air:freetds igorkorot$ > >>>>>> [/code] > >>>>>> > >>>>>> I can successfully run the iODBC GUI. > >>>>>> > >>>>>> So what is going on? > >>>>>> > >>>>>> Thank you. > >>>>>> > >>>>> > >>>>> I'll check my MacOS to see where pkg-config is and where the include > >> files > >>>>> are. > >>>> > >>>> Maybe the install is different if its downloaded from iodbc.org? > >>>> > >>>> Thank you. > >>>> > >>>>> > >>>>> Frediano > >>>>> _______________________________________________ > >>>>> FreeTDS mailing list > >>>>> FreeTDS at lists.ibiblio.org > >>>>> https://lists.ibiblio.org/mailman/listinfo/freetds > >> _______________________________________________ > >> FreeTDS mailing list > >> FreeTDS at lists.ibiblio.org > >> https://lists.ibiblio.org/mailman/listinfo/freetds > >> > > _______________________________________________ > > FreeTDS mailing list > > FreeTDS at lists.ibiblio.org > > https://lists.ibiblio.org/mailman/listinfo/freetds > > _______________________________________________ > FreeTDS mailing list > FreeTDS at lists.ibiblio.org > https://lists.ibiblio.org/mailman/listinfo/freetds > From frda at 4js.com Wed Nov 25 04:17:57 2020 From: frda at 4js.com (=?UTF-8?Q?Fran=c3=a7ois_DANEY?=) Date: Wed, 25 Nov 2020 10:17:57 +0100 Subject: [freetds] Failure to build FreeTDS 1.3-dev on AIX Message-ID: Good day, I'm having troubles compiling FreeTDS 1.3-dev with unixODBC 2.3.7 as a driver on AIX 7.2. Although the previous versions seem to work fine, it seems the 1.3-dev version has a new set of dependencies. Here is the error message generated by the "autogen.sh" script : # ./autogen.sh which: 0652-141 There is no autoreconf in /usr/bin /etc /usr/sbin /usr/ucb /usr/bin/X11 /sbin /usr/java7_64/jre/bin /usr/java7_64/bin. running in /dbs/64bits/ftm/tmp/freetds1.3-dev/freetds: ./autogen.sh[31]: autoreconf:? not found. ./autogen.sh[31]: autoreconf:? not found. The issue is that i cannot compile autoreconf on this system due to some vicious circle : 1. autoconf requires a newer version of m4; 2. m4 requires a newer version of automake; 3. automake requires a newer version of m4. Am i missing something ? Is that combination of OS / Software version not supported ? Thank you. From freddy77 at gmail.com Thu Nov 26 05:21:28 2020 From: freddy77 at gmail.com (Frediano Ziglio) Date: Thu, 26 Nov 2020 10:21:28 +0000 Subject: [freetds] Failure to build FreeTDS 1.3-dev on AIX In-Reply-To: References: Message-ID: Il giorno gio 26 nov 2020 alle ore 07:24 Fran?ois DANEY ha scritto: > Good day, > > I'm having troubles compiling FreeTDS 1.3-dev with unixODBC 2.3.7 as a > driver on AIX 7.2. > Although the previous versions seem to work fine, it seems the 1.3-dev > version has a new set of dependencies. > Here is the error message generated by the "autogen.sh" script : > > # ./autogen.sh > which: 0652-141 There is no autoreconf in /usr/bin /etc /usr/sbin > /usr/ucb /usr/bin/X11 /sbin /usr/java7_64/jre/bin /usr/java7_64/bin. > running in /dbs/64bits/ftm/tmp/freetds1.3-dev/freetds: > ./autogen.sh[31]: autoreconf: not found. > ./autogen.sh[31]: autoreconf: not found. > > The issue is that i cannot compile autoreconf on this system due to some > vicious circle : > 1. autoconf requires a newer version of m4; > 2. m4 requires a newer version of automake; > 3. automake requires a newer version of m4. > > Am i missing something ? > Is that combination of OS / Software version not supported ? > > Thank you. > Hi, as you are using the development version I suppose you want to change to code. In this case better if you sort out the autoreconf issue. Autoreconf was always needed by autogen.sh it's not a new requirement, it's an old development requirement. If you want just to use FreeTDS and not develop I would advise instead to get the last stable release (1.2.12 at the moment) already packaged and not needing autoreconf (as it comes with an already prepared configure script). If you still want to use the development version without fixing autoreconf on AIX I would either: - get a snapshot from the website; - generate configure from another machine and move to AIX. To solve the circular issue I think you can do 2 first removing the automake needs, just get a package with already prepared configure files and use it to compile and install m4. Regards, Frediano From frda at 4js.com Mon Nov 30 08:32:36 2020 From: frda at 4js.com (=?UTF-8?Q?Fran=c3=a7ois_DANEY?=) Date: Mon, 30 Nov 2020 14:32:36 +0100 Subject: [freetds] Failure to build FreeTDS 1.3-dev on AIX In-Reply-To: References: Message-ID: <80e61e61-a7da-a148-4566-f00e0c4743db@4js.com> On 11/26/20 11:21 AM, Frediano Ziglio wrote: > Il giorno gio 26 nov 2020 alle ore 07:24 Fran?ois DANEY ha > scritto: > >> Good day, >> >> I'm having troubles compiling FreeTDS 1.3-dev with unixODBC 2.3.7 as a >> driver on AIX 7.2. >> Although the previous versions seem to work fine, it seems the 1.3-dev >> version has a new set of dependencies. >> Here is the error message generated by the "autogen.sh" script : >> >> # ./autogen.sh >> which: 0652-141 There is no autoreconf in /usr/bin /etc /usr/sbin >> /usr/ucb /usr/bin/X11 /sbin /usr/java7_64/jre/bin /usr/java7_64/bin. >> running in /dbs/64bits/ftm/tmp/freetds1.3-dev/freetds: >> ./autogen.sh[31]: autoreconf: not found. >> ./autogen.sh[31]: autoreconf: not found. >> >> The issue is that i cannot compile autoreconf on this system due to some >> vicious circle : >> 1. autoconf requires a newer version of m4; >> 2. m4 requires a newer version of automake; >> 3. automake requires a newer version of m4. >> >> Am i missing something ? >> Is that combination of OS / Software version not supported ? >> >> Thank you. >> > Hi, > as you are using the development version I suppose you want to change to > code. > In this case better if you sort out the autoreconf issue. Autoreconf was > always needed > by autogen.sh it's not a new requirement, it's an old development > requirement. > If you want just to use FreeTDS and not develop I would advise instead to > get the > last stable release (1.2.12 at the moment) already packaged and not needing > autoreconf > (as it comes with an already prepared configure script). > If you still want to use the development version without fixing autoreconf > on AIX I would > either: > - get a snapshot from the website; > - generate configure from another machine and move to AIX. > > To solve the circular issue I think you can do 2 first removing the automake > needs, just get a package with already prepared configure files and use it > to compile and install m4. > > Regards, > Frediano > _______________________________________________ > FreeTDS mailing list > FreeTDS at lists.ibiblio.org > https://lists.ibiblio.org/mailman/listinfo/freetds Hello, ? Thanks for your reply, I didn't think about generating the configure from another machine. ? So I tried it and although I did manage to generate the configure from another machine, I was still unable to build the software from that point due to my versions of gperf being to old. ? However I managed to update everything that was required (automake, m4 and autoconf) and thus fixed my circular issue. I can now build FreeTDS. Thank you for your help. Best, ? Fran?ois From sf at 4js.com Tue Dec 1 11:53:13 2020 From: sf at 4js.com (Sebastien FLAESCH) Date: Tue, 1 Dec 2020 17:53:13 +0100 Subject: [freetds] ClientCharset issues on HP/UX Message-ID: Hello, On HP/UX, with latest 1.3-dev version: When setting the ODBC parameter ClientCharset = ISO-8859-15 With a LC_ALL set to C.iso885915 And a DB with collation SQL_Latin1_General_CP1_CI_AS (CP1252) The chars seem not to be converted properly from ISO-8859-15 to CP1252 when inserting data ... TDSDUMP shows: iconv.c:365:tds_iconv_open(6000000000170750, UTF-8) iconv.c:355:Using trivial iconv iconv.c:196:local name for ISO-8859-1 is ISO-8859-1 iconv.c:196:local name for UTF-8 is UTF-8 iconv.c:196:local name for UCS-2LE is UCS-2LE iconv.c:196:local name for UCS-2BE is UCS-2BE iconv.c:387:setting up conversions for client charset "UTF-8" iconv.c:389:preparing iconv for "UTF-8" <-> "UCS-2LE" conversion iconv.c:428:tds_iconv_open: done iconv.c:825:setting server single-byte charset to "CP1252" iconv.c:476:Charset 48 not supported by iconv, using "ISO-8859-1" instead Check last line... I guess this is the reason, but why? iconv -l gives: iso815 (iso8859_15, iso885915, ISO8859-15) <=> ucs2 (UCS-2, UTF-16) iso815 (iso8859_15, iso885915, ISO8859-15) <=> ucs2be (UCS-2BE, UTF-16BE) iso815 (iso8859_15, iso885915, ISO8859-15) <=> ucs2le (UCS-2LE, UTF-16LE) iso815 (iso8859_15, iso885915, ISO8859-15) <=> ucs4 (UCS-4, UTF-32) iso815 (iso8859_15, iso885915, ISO8859-15) <=> ucs4be (UCS-4BE, UTF-32BE) iso815 (iso8859_15, iso885915, ISO8859-15) <=> ucs4le (UCS-4LE, UTF-32LE) iso815 (iso8859_15, iso885915, ISO8859-15) <=> utf8 (UTF8, UTF-8) I have tested different aliases for ISO-8859-15 like iso815 or ISO8859-15 without success... What is wrong here? Seb From james.k.lowden at icloud.com Tue Dec 1 14:00:20 2020 From: james.k.lowden at icloud.com (James K. Lowden) Date: Tue, 1 Dec 2020 14:00:20 -0500 Subject: [freetds] ClientCharset issues on HP/UX In-Reply-To: References: Message-ID: <20201201140020.86d124ea8b8973e431e5a6c0@icloud.com> On Tue, 1 Dec 2020 17:53:13 +0100 Sebastien FLAESCH wrote: > iconv.c:365:tds_iconv_open(6000000000170750, UTF-8) > iconv.c:355:Using trivial iconv ... > iconv.c:389:preparing iconv for "UTF-8" <-> "UCS-2LE" conversion > iconv.c:428:tds_iconv_open: done > iconv.c:825:setting server single-byte charset to "CP1252" > iconv.c:476:Charset 48 not supported by iconv, using "ISO-8859-1" > instead > > Check last line... I guess this is the reason, but why? Because of the 2nd line. You're using the built-in iconv, not a full iconv library. HTH. --jkl From sf at 4js.com Tue Dec 1 15:40:19 2020 From: sf at 4js.com (Sebastien FLAESCH) Date: Tue, 1 Dec 2020 21:40:19 +0100 Subject: [freetds] ClientCharset issues on HP/UX In-Reply-To: <20201201140020.86d124ea8b8973e431e5a6c0@icloud.com> References: <20201201140020.86d124ea8b8973e431e5a6c0@icloud.com> Message-ID: <55c4097a-ea50-60c8-60df-2455134e51e4@4js.com> Thank you James! We'll try to rebuild FreeTDS with the OS libiconv. Seb On 12/1/20 8:00 PM, James K. Lowden via FreeTDS wrote: > On Tue, 1 Dec 2020 17:53:13 +0100 > Sebastien FLAESCH wrote: > >> iconv.c:365:tds_iconv_open(6000000000170750, UTF-8) >> iconv.c:355:Using trivial iconv > ... >> iconv.c:389:preparing iconv for "UTF-8" <-> "UCS-2LE" conversion >> iconv.c:428:tds_iconv_open: done >> iconv.c:825:setting server single-byte charset to "CP1252" >> iconv.c:476:Charset 48 not supported by iconv, using "ISO-8859-1" >> instead >> >> Check last line... I guess this is the reason, but why? > > Because of the 2nd line. You're using the built-in iconv, not a full > iconv library. > > HTH. > > --jkl > _______________________________________________ > FreeTDS mailing list > FreeTDS at lists.ibiblio.org > https://lists.ibiblio.org/mailman/listinfo/freetds > From freddy77 at gmail.com Wed Dec 2 06:16:25 2020 From: freddy77 at gmail.com (Frediano Ziglio) Date: Wed, 2 Dec 2020 11:16:25 +0000 Subject: [freetds] ClientCharset issues on HP/UX In-Reply-To: <55c4097a-ea50-60c8-60df-2455134e51e4@4js.com> References: <20201201140020.86d124ea8b8973e431e5a6c0@icloud.com> <55c4097a-ea50-60c8-60df-2455134e51e4@4js.com> Message-ID: Hi, sometime I think I should add a --i-really-dont-want-to-use-iconv option! Frediano Il giorno mar 1 dic 2020 alle ore 20:42 Sebastien FLAESCH ha scritto: > Thank you James! > We'll try to rebuild FreeTDS with the OS libiconv. > Seb > > On 12/1/20 8:00 PM, James K. Lowden via FreeTDS wrote: > > On Tue, 1 Dec 2020 17:53:13 +0100 > > Sebastien FLAESCH wrote: > > > >> iconv.c:365:tds_iconv_open(6000000000170750, UTF-8) > >> iconv.c:355:Using trivial iconv > > ... > >> iconv.c:389:preparing iconv for "UTF-8" <-> "UCS-2LE" conversion > >> iconv.c:428:tds_iconv_open: done > >> iconv.c:825:setting server single-byte charset to "CP1252" > >> iconv.c:476:Charset 48 not supported by iconv, using "ISO-8859-1" > >> instead > >> > >> Check last line... I guess this is the reason, but why? > > > > Because of the 2nd line. You're using the built-in iconv, not a full > > iconv library. > > > > HTH. > > > > --jkl > > _______________________________________________ > > FreeTDS mailing list > > FreeTDS at lists.ibiblio.org > > https://lists.ibiblio.org/mailman/listinfo/freetds > > > > _______________________________________________ > FreeTDS mailing list > FreeTDS at lists.ibiblio.org > https://lists.ibiblio.org/mailman/listinfo/freetds >