Opened 9 months ago

Last modified 7 weeks ago

#61842 new defect

opendx @4.4.4_10: y.tab.c:1107:16: error: implicit declaration of function '_dxfcclex' is invalid in C99 [-Werror,-Wimplicit-function-declaration]

Reported by: abitees Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.6.4
Keywords: catalina bigsur Cc:
Port: opendx

Description

After upgrading Mac OSX from Catalina to Big Sur and reinstalling MacPorts using "MacPorts-2.6.4_1-11-BigSur.pkg", installation of opendx fails.

--->  Computing dependencies for opendx
--->  Fetching archive for opendx
--->  Attempting to fetch opendx-4.4.4_10+java.darwin_20.x86_64.tbz2 from https://kmq.jp.packages.macports.org/opendx
--->  Attempting to fetch opendx-4.4.4_10+java.darwin_20.x86_64.tbz2 from http://jog.id.packages.macports.org/macports/packages/opendx
--->  Attempting to fetch opendx-4.4.4_10+java.darwin_20.x86_64.tbz2 from https://ywg.ca.packages.macports.org/mirror/macports/packages/opendx
--->  Fetching distfiles for opendx
--->  Verifying checksums for opendx
--->  Extracting opendx
--->  Applying patches to opendx
--->  Configuring opendx
--->  Building opendx
Error: Failed to build opendx: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_opendx/opendx/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port opendx failed

Attachments (1)

main.log (652.9 KB) - added by abitees 9 months ago.

Download all attachments as: .zip

Change History (9)

Changed 9 months ago by abitees

Attachment: main.log added

comment:1 Changed 9 months ago by mf2k (Frank Schima)

Keywords: Big Sur removed
Port: opendx-samples removed

comment:2 Changed 9 months ago by mf2k (Frank Schima)

Summary: opendx @4.4.4_10: Build failure with "Error: command execution failed"opendx @4.4.4_10: y.tab.c:1107:16: error: implicit declaration of function '_dxfcclex' is invalid in C99 [-Werror,-Wimplicit-function-declaration]

First error appears to be:

y.tab.c:1107:16: error: implicit declaration of function '_dxfcclex' is invalid in C99 [-Werror,-Wimplicit-function-declaration]

comment:3 Changed 9 months ago by ryandesign (Ryan Schmidt)

Keywords: catalina bigsur added

comment:4 Changed 9 months ago by ryandesign (Ryan Schmidt)

In 6cad1fe2afeeda871af1c96b362b85d0384b27fd/macports-ports (master):

opendx: Fix an implicit declaration of function

See: #61842

comment:5 Changed 9 months ago by ryandesign (Ryan Schmidt)

That fixes the first error, but there are more:

y.tab.c:1107:16: error: implicit declaration of function '_dxfcclex' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
./_compparse.y:432:47: error: implicit declaration of function '_dxfcclexerror' is invalid in C99 [-Werror,-Wimplicit-function-declaration]

These are more complicated because they occur in files that were generated by bison so I'm not sure where the problem is supposed to be fixed. It's the same problem we had in another port (#61032) and the fix employed there (turning the error back into a warning) is not what we want to do. We should find the correct way to fix it (the correct place to include the right header) and apply that fix both here and in that other port.

comment:6 Changed 9 months ago by Schamschula (Marius Schamschula)

opendx has not been maintained upstream for a number of years.

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

But #61032 was about udunits2 and they are still being maintained. Their bug report about this issue is https://github.com/Unidata/UDUNITS-2/issues/97. If they work out the right solution, we can apply the same solution here to opendx.

comment:8 Changed 7 weeks ago by bernstei

It's a terrible hack, but you can get opendx to build with the following additional patch file. It just forces the compiler to stop complaining about implicitly defined functions everyplace they happen to occur.

--- src/exec/dxmods/Makefile.am.orig	2021-07-30 13:29:31.000000000 -0400
+++ src/exec/dxmods/Makefile.am	2021-07-30 13:29:31.000000000 -0400
@@ -111,4 +111,6 @@
 	$(SOURCES6) \
 	$(SOURCES7)
 
+AM_CFLAGS = -Wno-error=implicit-function-declaration
+
 @LOCALMAKE@
--- src/uipp/dxuilib/Makefile.am.orig	2021-07-30 13:29:31.000000000 -0400
+++ src/uipp/dxuilib/Makefile.am	2021-07-30 13:29:31.000000000 -0400
@@ -426,4 +426,6 @@
 
 libDXUI_a_SOURCES = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4) $(SRCS5)
 
+AM_CFLAGS = -Wno-error=implicit-function-declaration
+
 @LOCALMAKE@
--- src/uipp/widgets/Makefile.am.orig	2021-07-30 13:29:31.000000000 -0400
+++ src/uipp/widgets/Makefile.am	2021-07-30 13:29:31.000000000 -0400
@@ -84,3 +84,5 @@
 	stepb.bm			\
 	stepf.bm			\
 	stop.bm
+
+AM_CFLAGS = -Wno-error=implicit-function-declaration
--- src/exec/dpexec/Makefile.am.orig	2021-07-30 13:29:31.000000000 -0400
+++ src/exec/dpexec/Makefile.am	2021-07-30 13:29:31.000000000 -0400
@@ -39,6 +39,8 @@
 
 DISTCLEANFILES = compile.h
 
+AM_CFLAGS = -Wno-error=implicit-function-declaration
+
 @LOCALMAKE@
 
 command.o : compile.h
Note: See TracTickets for help on using tickets.