Bug 237490

Summary: lang/erlang: Fails to link: undefined symbol: SQL*
Product: Ports & Packages Reporter: tech-lists
Component: Individual Port(s)Assignee: freebsd-erlang (Nobody) <erlang>
Status: Closed Unable to Reproduce    
Severity: Affects Only Me CC: dch, erlang, freebsd-bugs, gwright, milios, tomas
Priority: --- Keywords: needs-qa
Version: LatestFlags: koobs: maintainer-feedback? (erlang)
Hardware: amd64   
OS: Any   

Description tech-lists 2019-04-23 12:01:59 UTC

context: poudriere, 12-stable jail @r345762, ports@499712

Lots of errors like this:

[03:29:01] ld: error: undefined symbol: SQLAllocHandle
[03:29:01] >>> referenced by odbcserver.c
[03:29:01] >>>               ../priv/obj/amd64-portbld-freebsd12.0/odbcserver.o:(handle_db_request)
[03:29:01] ld: error: undefined symbol: SQLSetEnvAttr
[03:29:01] >>> referenced by odbcserver.c
[03:29:01] >>>               ../priv/obj/amd64-portbld-freebsd12.0/odbcserver.o:(handle_db_request)
[03:29:01] ld: error: undefined symbol: SQLAllocHandle
[03:29:01] >>> referenced by odbcserver.c
[03:29:01] >>>               ../priv/obj/amd64-portbld-freebsd12.0/odbcserver.o:(handle_db_request)

eventually fails with:

[03:29:01] ld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
[03:29:01] cc: error: linker command failed with exit code 1 (use -v to see invocation)
[03:29:01] gmake[5]: *** [amd64-portbld-freebsd12.0/Makefile:112: ../priv/bin/amd64-portbld-freebsd12.0/odbcserver] Error 1

full log at:
Comment 1 Bugzilla Automation freebsd_committer 2019-04-23 12:01:59 UTC
Maintainer informed via mail
Comment 2 Kubilay Kocak freebsd_committer freebsd_triage 2019-04-23 12:09:45 UTC
Does the build still fail with the ODBC option disabled?
Comment 3 tech-lists 2019-04-23 12:23:21 UTC
(In reply to Kubilay Kocak from comment #2)
I'll test this shortly
Comment 4 tech-lists 2019-04-23 13:27:51 UTC
(In reply to Kubilay Kocak from comment #2)
It builds fine with that option disabled
Comment 5 gwright 2019-05-03 14:42:18 UTC
I've run across the same failure on the same amd64 box, under both 11.2 and now 12.0.
Comment 6 gwright 2019-05-03 14:48:57 UTC
If it helps, the failure I saw on 12.0/amd64 was during a clean reinstall of all ports.  After I upgraded to 12.0, I dumped a list of installed ports; deleted all of them; edited the list of ports to remove unneeded ones and installed the ports on a clean system.
Comment 7 Tomáš Čiernik 2019-11-19 12:06:26 UTC

this bug occurs on 11.3-RELEASE amd64 too. It can be solved by disabling ODBC, but not when SQL database connection is needed.

Error log is available at https://sona.ciernik.sk/poudriere/data/113amd64-local-erlang/2019-11-19_12h20m15s/logs/errors/erlang-,4.log
Comment 8 Dave Cottlehuber freebsd_committer 2019-11-22 12:37:55 UTC
Tomas I can't reproduce this within poudriere using default options (on 12.1, 11.3 x86 nor amd64). Which specific custom options do you have installed? only ODBC?

Also, the url for your poudriere doesn't let me in, can you make your poudriere logs available?
Comment 9 Tomáš Čiernik 2019-11-22 14:15:36 UTC

that log file was delete by mistake. Sending new link - https://sona.ciernik.sk/poudriere/data/113amd64-local-erlang/2019-11-22_14h12m36s/logs/errors/erlang-,4.log

Except ODBC, all options were kept on defaults. I tried to build erlang without ODBC, everything was OK - log is available at https://sona.ciernik.sk/poudriere/data/113amd64-local-erlang/2019-11-22_14h26m34s/logs/erlang-,4.log

Based on fact you cannot reproduce this error, I have some doubts about my environment. I will double check it. Please excuse my disturbing.
Comment 10 mhambley 2020-02-02 08:40:20 UTC
I am seeing this problem from a simple "make" as root. Could it be related to LibreSSL being used in place of OpenSSL. In my /etc/make.conf: DEFAULT_VERSIONS+= ssl=libressl.
Comment 11 Dave Cottlehuber freebsd_committer 2021-10-04 09:35:07 UTC
I still can't reproduce this with OTP24 as lang/erlang & 12.2 & 13.0 amd64.