Opened 5 years ago

Closed 15 months ago

#59338 closed defect (worksforme)

freetds @1.00.9 +mssql +odbc : fails to install on High Sierra and Catalina (possibly others)

Reported by: kalling (Richard Kalling) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: freetds

Description

When trying to install freetds with +mssql and +odbc options, the install fails.

MacOS: 10.15 (19A583)
I also have a report from a user on 10.13

Xcode: Version 11.1 (11A1027)

From the log

MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -arch x86_64 -Wdeclaration-after-statement -MT bulk.lo -MD -MP -MF .deps/bulk.Tpo -c bulk.c  -fno-common -DPIC -o .libs/bulk.o
:info:build tls.c:83:33: error: incomplete definition of type 'struct bio_st'
:info:build         TDSSOCKET *tds = (TDSSOCKET *) SSL_PTR;
:info:build                                        ^~~~~~~
:info:build tls.c:77:20: note: expanded from macro 'SSL_PTR'
:info:build #define SSL_PTR bio->ptr
:info:build                 ~~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:114:33: error: incomplete definition of type 'struct bio_st'
:info:build         TDSSOCKET *tds = (TDSSOCKET *) SSL_PTR;
:info:build                                        ^~~~~~~
:info:build tls.c:77:20: note: expanded from macro 'SSL_PTR'
:info:build #define SSL_PTR bio->ptr
:info:build                 ~~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:126:42: error: incomplete definition of type 'struct bio_st'
:info:build         TDSCONNECTION *conn = (TDSCONNECTION *) SSL_PTR;
:info:build                                                 ^~~~~~~
:info:build tls.c:77:20: note: expanded from macro 'SSL_PTR'
:info:build #define SSL_PTR bio->ptr
:info:build                 ~~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:149:42: error: incomplete definition of type 'struct bio_st'
:info:build         TDSCONNECTION *conn = (TDSCONNECTION *) SSL_PTR;
:info:build                                                 ^~~~~~~
:info:build tls.c:77:20: note: expanded from macro 'SSL_PTR'
:info:build #define SSL_PTR bio->ptr
:info:build                 ~~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:551:34: error: incomplete definition of type 'struct bio_st'
:info:build         TDSSOCKET *tds = (TDSSOCKET *) b->ptr;
:info:build                                        ~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:569:19: error: variable has incomplete type 'BIO_METHOD' (aka 'struct bio_method_st')
:info:build static BIO_METHOD tds_method_login =
:info:build                   ^
:info:build /opt/local/include/openssl/bio.h:249:16: note: forward declaration of 'struct bio_method_st'
:info:build typedef struct bio_method_st BIO_METHOD;
:info:build                ^
:info:build tls.c:583:19: error: variable has incomplete type 'BIO_METHOD' (aka 'struct bio_method_st')
:info:build static BIO_METHOD tds_method =
:info:build                   ^
:info:build /opt/local/include/openssl/bio.h:249:16: note: forward declaration of 'struct bio_method_st'
:info:build typedef struct bio_method_st BIO_METHOD;
:info:build                ^
:info:build tls.c:611:9: warning: 'TLSv1_client_method' is deprecated [-Wdeprecated-declarations]
:info:build         meth = TLSv1_client_method ();
:info:build                ^
:info:build /opt/local/include/openssl/ssl.h:1879:1: note: 'TLSv1_client_method' has been explicitly marked deprecated here
:info:build DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_client_method(void))
:info:build ^
:info:build /opt/local/include/openssl/opensslconf.h:158:34: note: expanded from macro 'DEPRECATEDIN_1_1_0'
:info:build # define DEPRECATEDIN_1_1_0(f)   DECLARE_DEPRECATED(f)
:info:build                                  ^
:info:build /opt/local/include/openssl/opensslconf.h:121:55: note: expanded from macro 'DECLARE_DEPRECATED'
:info:build #   define DECLARE_DEPRECATED(f)    f __attribute__ ((deprecated));
:info:build                                                       ^
:info:build tls.c:747:27: warning: 'ASN1_STRING_data' is deprecated [-Wdeprecated-declarations]
:info:build                 altptr = (const char *) ASN1_STRING_data(name->d.ia5);
:info:build                                         ^
:info:build /opt/local/include/openssl/asn1.h:554:1: note: 'ASN1_STRING_data' has been explicitly marked deprecated here
:info:build DEPRECATEDIN_1_1_0(unsigned char *ASN1_STRING_data(ASN1_STRING *x))
:info:build ^
:info:build /opt/local/include/openssl/opensslconf.h:158:34: note: expanded from macro 'DEPRECATEDIN_1_1_0'
:info:build # define DEPRECATEDIN_1_1_0(f)   DECLARE_DEPRECATED(f)
:info:build                                  ^
:info:build /opt/local/include/openssl/opensslconf.h:121:55: note: expanded from macro 'DECLARE_DEPRECATED'
:info:build #   define DECLARE_DEPRECATED(f)    f __attribute__ ((deprecated));
:info:build                                                       ^
:info:build tls.c:867:3: error: incomplete definition of type 'struct bio_st'
:info:build         b->shutdown=1;
:info:build         ~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:868:3: error: incomplete definition of type 'struct bio_st'
:info:build         b->init=1;
:info:build         ~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:869:3: error: incomplete definition of type 'struct bio_st'
:info:build         b->num= -1;
:info:build         ~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:870:3: error: incomplete definition of type 'struct bio_st'
:info:build         b->ptr = tds;
:info:build         ~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:886:36: error: incomplete definition of type 'struct ssl_st'
:info:build         ret = SSL_connect(con) != 1 || con->state != SSL_ST_OK;
:info:build                                        ~~~^
:info:build /opt/local/include/openssl/ossl_typ.h:147:16: note: forward declaration of 'struct ssl_st'
:info:build typedef struct ssl_st SSL;
:info:build                ^
:info:build tls.c:886:47: error: use of undeclared identifier 'SSL_ST_OK'; did you mean 'TLS_ST_OK'?
:info:build         ret = SSL_connect(con) != 1 || con->state != SSL_ST_OK;
:info:build                                                      ^~~~~~~~~
:info:build                                                      TLS_ST_OK
:info:build /opt/local/include/openssl/ssl.h:993:5: note: 'TLS_ST_OK' declared here
:info:build     TLS_ST_OK,
:info:build     ^
:info:build tls.c:902:4: error: incomplete definition of type 'struct bio_st'
:info:build         b2->shutdown = 1;
:info:build         ~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:903:4: error: incomplete definition of type 'struct bio_st'
:info:build         b2->init = 1;
:info:build         ~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:904:4: error: incomplete definition of type 'struct bio_st'
:info:build         b2->num = -1;
:info:build         ~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build tls.c:905:4: error: incomplete definition of type 'struct bio_st'
:info:build         b2->ptr = tds->conn;
:info:build         ~~^
:info:build /opt/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st'
:info:build typedef struct bio_st BIO;
:info:build                ^
:info:build 2 warnings and 17 errors generated.
:info:build make[4]: *** [tls.lo] Error 1
:info:build make[4]: *** Waiting for unfinished jobs....
:info:build libtool: compile:  /usr/bin/clang -DHAVE_CONFIG_H -I. -I../../include -I../../include -I/opt/local/include -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DUNIXODBC -DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H -DHAVE_LONG_LONG -DSIZEOF_LONG_INT=8 -I/opt/local/include -D_REENTRANT -D_THREAD_SAFE -DDEBUG=1 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wno-long-long -Wpointer-arith -D_THREAD_SAFE -pipe -Os -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -arch x86_64 -Wdeclaration-after-statement -MT bulk.lo -MD -MP -MF .deps/bulk.Tpo -c bulk.c -o bulk.o >/dev/null 2>&1
:info:build make[4]: Leaving directory `/opt/local/var/macports/build/_private_tmp_ports_databases_freetds/freetds/work/freetds-1.00.9/src/tds'
:info:build make[3]: *** [all-recursive] Error 1
:info:build make[3]: Leaving directory `/opt/local/var/macports/build/_private_tmp_ports_databases_freetds/freetds/work/freetds-1.00.9/src/tds'
:info:build make[2]: *** [all] Error 2
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_private_tmp_ports_databases_freetds/freetds/work/freetds-1.00.9/src/tds'
:info:build make[1]: *** [all-recursive] Error 1
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_private_tmp_ports_databases_freetds/freetds/work/freetds-1.00.9/src'
:info:build make: *** [all-recursive] Error 1
:info:build make: Leaving directory `/opt/local/var/macports/build/_private_tmp_ports_databases_freetds/freetds/work/freetds-1.00.9'
:info:build Command failed:  cd "/opt/local/var/macports/build/_private_tmp_ports_databases_freetds/freetds/work/freetds-1.00.9" && /usr/bin/make -j2 -w all 
:info:build Exit code: 2
:error:build Failed to build freetds: command execution failed
:debug:build Error code: CHILDSTATUS 25746 2
:debug:build Backtrace: command execution failed
:debug:build     while executing
:debug:build "system {*}$notty {*}$nice $fullcmdstring"
:debug:build     invoked from within
:debug:build "command_exec build"
:debug:build     (procedure "portbuild::build_main" line 8)
:debug:build     invoked from within
:debug:build "$procedure $targetname"

Change History (7)

comment:1 Changed 5 years ago by mf2k (Frank Schima)

Keywords: freetds removed

comment:2 Changed 5 years ago by mf2k (Frank Schima)

In the future, please add the port maintainer(s) to Cc (port info --maintainers freetds), if any.

comment:3 Changed 5 years ago by mf2k (Frank Schima)

Owner: set to ryandesign
Status: newassigned

comment:4 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)

1.00.9 is not the current version of the freetds portfile. Please sudo port selfupdate to get the latest version and try again. If that fails too, please attach a main.log of that run.

I also see that your portfile is located in /tmp/ports/databases/freetds. That's unusual. Do you know why a portfile from that directory is being used, instead of the one in our official collection?

comment:5 Changed 5 years ago by kalling (Richard Kalling)

Thanks for noticing the portfile location. freetds was being installed as part of another application, and your comment clued me in to it using a custom freetds portfile.

I am trying again with that portfile removed. I apologize for not noticing this earlier.

comment:6 Changed 15 months ago by ryandesign (Ryan Carsten Schmidt)

Is this still a problem with the current version of the Portfile? As of today, that's 1.3.19.

comment:7 Changed 15 months ago by ryandesign (Ryan Carsten Schmidt)

Resolution: worksforme
Status: assignedclosed

Richard responded by email:

This was so long ago I actually don't remember if it ever got resolved. It can probably be closed.

Note: See TracTickets for help on using tickets.