Opened 12 years ago

Closed 7 years ago

#19491 closed defect (fixed)

tclx: syntax error before '->' token

Reported by: spetinga@… Owned by: markd@…
Priority: Normal Milestone:
Component: ports Version: 1.7.1
Keywords: Cc: jnudell@…, greg@…, cooljeanius (Eric Gallager), kurthindenburg (Kurt Hindenburg)
Port: tclx

Description (last modified by jmroot (Joshua Root))

I was attempting to download tclx onto leopard 10.5.6 and received the following error:

cassini:bin root# port install tclx
--->  Building tclx
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_tclx/work/tclx8.4" && make all " returned error 2
Command output: /usr/bin/gcc-4.0 -pipe -DPACKAGE_NAME=\"tclx\" -DPACKAGE_TARNAME=\"tclx\" -DPACKAGE_VERSION=\"8.4\" -DPACKAGE_STRING=\"tclx\ 8.4\" -DPACKAGE_BUGREPORT=\"\" -DFULL_VERSION=\"8.4.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DNO_VALUES_H=1 -DHAVE_LIMITS_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DTCL_WIDE_INT_TYPE=long\ long -DHAVE_STRUCT_STAT64=1 -DUSE_TCL_STUBS=1 -DHAVE_SYS_SELECT_H=1 -DRETSIGTYPE=void -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_STRUCT_TM_TM_ZONE=1 -DHAVE_TM_ZONE=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1   -I"./generic" -I"./unix" -I"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_tcl/work/tcl8.5.6/generic" -I"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_tcl/work/tcl8.5.6/unix"  -I/opt/local/include  -O2 -I/opt/local/include -Os -Wall -Wno-implicit-int -fno-common -c `echo ./generic/tclXbsearch.c` -o tclXbsearch.o
In file included from ./generic/tclInt.h:2356,
                 from ./generic/tclExtdInt.h:26,
                 from ./generic/tclXbsearch.c:19:
./generic/tclIntDecls.h:322: error: syntax error before '->' token
./generic/tclIntDecls.h:326: error: syntax error before '->' token
./generic/tclIntDecls.h:330: error: syntax error before '->' token
./generic/tclIntDecls.h:333: error: syntax error before '->' token
./generic/tclIntDecls.h:337: error: syntax error before '->' token
./generic/tclIntDecls.h:341: error: syntax error before '->' token
./generic/tclIntDecls.h:357: error: syntax error before '->' token
./generic/tclIntDecls.h:360: error: syntax error before '->' token
./generic/tclIntDecls.h:363: error: syntax error before '->' token
./generic/tclIntDecls.h:367: error: syntax error before '->' token
./generic/tclIntDecls.h:370: error: syntax error before '->' token
./generic/tclIntDecls.h:377: error: syntax error before '->' token
make: *** [tclXbsearch.o] Error 1

Error: Status 1 encountered during processing.
cassini:bin root# 

Change History (11)

comment:1 Changed 12 years ago by jmroot (Joshua Root)

Description: modified (diff)
Owner: changed from macports-tickets@… to markd@…
Port: tclx added

Please remember to use WikiFormatting, fill in the Port field, and cc the maintainer.

comment:2 Changed 9 years ago by anddam (Andrea D'Amore)

#20641 has far more information about the issue, this is still open and actual on 10.7 .

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

Cc: jnudell@… greg@… added
Summary: Compile error with tclxtclx: syntax error before '->' token

Has duplicate #31520.

comment:4 Changed 9 years ago by markd@…

It looks like the freebsd folks have it running on Tcl85 so maybe using some of the patches in the freebsd port could fix this. I don't have the time to test it at the moment.

comment:5 Changed 9 years ago by org.macports@…

The problem here is that the macports tclx port is also distributing tclInt.h and tclIntDecls.h that it got from Tcl sources. Even though tclInt*.h are technically private headers for Tcl, the reality is that extensions have found it necessary to use them. I believe the proper fix here is to remove tclInt*.h from tclx and other Tcl extension ports, and make sure the Tcl port installs them instead ("make install-private-headers").

comment:6 Changed 8 years ago by cooljeanius (Eric Gallager)

Cc: egall@… added

Cc Me!

comment:7 Changed 8 years ago by cooljeanius (Eric Gallager)

#38603 is related

comment:8 in reply to:  5 ; Changed 8 years ago by cooljeanius (Eric Gallager)

Replying to org.macports@…:

and make sure the Tcl port installs them instead ("make install-private-headers").

This is #39431 now

comment:9 in reply to:  8 Changed 8 years ago by cooljeanius (Eric Gallager)

Replying to egall@…:

Replying to org.macports@…:

and make sure the Tcl port installs them instead ("make install-private-headers").

This is #39431 now

Actually nvm, that was a duplicate of #17189

comment:10 Changed 7 years ago by kurthindenburg (Kurt Hindenburg)

Cc: khindenburg@… added

Cc Me!

comment:11 Changed 7 years ago by kurthindenburg (Kurt Hindenburg)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.