Opened 11 years ago
Last modified 6 months ago
#38182 new defect
tcLex @1.2a1 build failure: missing header: <tclInt.h>
Reported by: | cooljeanius (Eric Gallager) | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.3 |
Keywords: | Cc: | ||
Port: | tcLex |
Description
Log is attached. Relevant part of log including error:
DEBUG: Environment: CPATH='/opt/local/include' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_tcLex/tcLex/work/.CC_PRINT_OPTIONS' LIBRARY_PATH='/opt/local/lib' CC_PRINT_OPTIONS='YES' MACOSX_DEPLOYMENT_TARGET='10.7' DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_tcLex/tcLex/work/tcLex1.2a1/src" && /usr/bin/make -j4 -w all' DEBUG: Executing command line: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_tcLex/tcLex/work/tcLex1.2a1/src" && /usr/bin/make -j4 -w all make: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_tcLex/tcLex/work/tcLex1.2a1/src' /usr/bin/clang -fno-common -framework Tcl -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_tcl/tcl/work/tcl8.6.0/generic -I/opt/local/include -DTCLEX_VERSION=\"1.2\" -c -o tcLex.o tcLex.c /usr/bin/clang -fno-common -framework Tcl -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_tcl/tcl/work/tcl8.6.0/generic -I/opt/local/include -DTCLEX_VERSION=\"1.2\" -c -o tcLexRE.o tcLexRE.c (if test -f /opt/local/lib/tcLex1.2/pkgIndex.tcl; \ then grep -v 1.2 /opt/local/lib/tcLex1.2/pkgIndex.tcl; \ else true; fi;) | \ echo 'package ifneeded tcLex 1.2 [list load [file join $dir tcLex.dylib.1.2] tcLex]' > pkgIndex.tcl clang: clang: warning: -framework Tcl: 'linker' input unusedwarning: -framework Tcl: 'linker' input unused tcLexRE.c:6:10: fatal error: 'tclInt.h' file not found tcLex.c:26:10: fatal error: 'tclInt.h' file not found #include <tclInt.h> ^ #include <tclInt.h> ^ 1 error generated. make: *** [tcLexRE.o] Error 1 make: *** Waiting for unfinished jobs.... 1 error generated. make: *** [tcLex.o] Error 1 make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_tcLex/tcLex/work/tcLex1.2a1/src' Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_tcLex/tcLex/work/tcLex1.2a1/src" && /usr/bin/make -j4 -w all Exit code: 2 Error: org.macports.build for port tcLex returned: command execution failed DEBUG: Error code: CHILDSTATUS 21927 2 DEBUG: Backtrace: command execution failed while executing "system -nice 0 $fullcmdstring" ("eval" body line 1) invoked from within "eval system $notty $nice \$fullcmdstring" invoked from within "command_exec build" (procedure "portbuild::build_main" line 8) invoked from within "$procedure $targetname" Warning: targets not executed for tcLex: org.macports.activate org.macports.build org.macports.destroot org.macports.install
Relevant system info:
gl00b05046:~ root# uname -a Darwin gl00b05046.cats.gwu.edu 11.4.2 Darwin Kernel Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012; root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64 gl00b05046:~ root# port version Version: 2.1.3 gl00b05046:~ root# port installed tcl The following ports are currently installed: tcl @8.6.0_1+corefoundation+threads+universal (active) gl00b05046:~ root# port contents tcl | grep \\.h /opt/local/include/fakemysql.h /opt/local/include/fakepq.h /opt/local/include/fakesql.h /opt/local/include/itcl.h /opt/local/include/itcl2TclOO.h /opt/local/include/itclDecls.h /opt/local/include/itclInt.h /opt/local/include/itclIntDecls.h /opt/local/include/itclMigrate2TclCore.h /opt/local/include/itclTclIntStubsFcn.h /opt/local/include/mysqlStubs.h /opt/local/include/odbcStubs.h /opt/local/include/pqStubs.h /opt/local/include/tcl.h /opt/local/include/tclDecls.h /opt/local/include/tclOO.h /opt/local/include/tclOODecls.h /opt/local/include/tclPlatDecls.h /opt/local/include/tclThread.h /opt/local/include/tclTomMath.h /opt/local/include/tclTomMathDecls.h /opt/local/include/tdbc.h /opt/local/include/tdbcDecls.h /opt/local/include/tdbcInt.h
tcLex is nomaintainer so anyone can try to fix this...
Attachments (1)
Change History (5)
Changed 11 years ago by cooljeanius (Eric Gallager)
comment:1 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Summary: | tcLex @1.2a1 build failure on Lion: missing header: <tclInt.h> → tcLex @1.2a1 build failure: missing header: <tclInt.h> |
---|
The problem is tclInt.h is a private header; projects should not be using it. tcLex 1.2a1 was released a loooong time ago, in 1999, possibly before the header was made private. tcLex needs to be patched to not use tclInt.h. Perhaps such a patch already exists somewhere on the Internet.
comment:2 Changed 11 years ago by cooljeanius (Eric Gallager)
ok, in the process of trying to cook up a patch, I copied tclInt.h from OS X's System Tcl's private-headers folder into the project, changed the <>
quotes to ""
quotes, and copied the rest of the private headers that tclInt.h needs, too, but then I ran into this error:
/usr/bin/clang -fno-common -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_tcl/tcl/work/tcl8.6.0/generic -I/opt/local/include -DTCLEX_VERSION=\"1.2\" -c -o tcLexRE.o tcLexRE.c tcLexRE.c:11:10: fatal error: 'tclRegexp.h' file not found #include <tclRegexp.h> ^ 1 error generated. make: *** [tcLexRE.o] Error 1
I don't see tclRegexp.h among Tcl's private-headers; where might it be?
comment:4 Changed 6 months ago by cooljeanius (Eric Gallager)
I'm keeping my attempts to fix tcLex in the following GitHub repo: https://github.com/cooljeanius/tcLex
(not really sure if it's ready for submission as a Portfile update or not yet, though...)
tcLex's main.log