opencog / link-grammar

The CMU Link Grammar natural language parser

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Make - failure to find link-names.o

nealef opened this issue · comments

After running configure:

link-grammar-5.12.3  build configuration settings

	prefix:                         /usr/local
	datadir:                        ${prefix}/share
	C compiler:                     gcc  -D_DEFAULT_SOURCE -std=c11 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -D_ISOC11_SOURCE -fvisibility=hidden -g -O3 -pthread
	C++ compiler:                   g++  -D_DEFAULT_SOURCE -std=c++17 -fvisibility=hidden -g -O3 -Wall
	Regex library:                  -lpcre2-8
	TLS:                            yes
	Editline command-line history:  no
	UTF8 editline support:          no
	Java libraries:                 yes
	Java interfaces:                yes
	Swig interfaces generator:      /usr/bin/swig -c++
	Perl interfaces:                no
	Perl install location:
	Python interfaces:              3.9 (/usr/bin/python3)
	ASpell spell checker:           yes
	HunSpell spell checker:         no
	HunSpell dictionary location:
	Boolean SAT parser:             no
	SQLite-backed dictionary:       yes
	AtomSpace-backed dictionary:    no
	Definitions:                    -DPACKAGE_NAME="link-grammar" -DPACKAGE_TARNAME="link-grammar" -DPACKAGE_VERSION="5.12.3" -DPACKAGE_STRING="link-grammar 5.12.3" -DPACKAGE_BUGREPORT="https://github.com/opencog/link-grammar" -DPACKAGE_URL="https://www.abisource.com/projects/link-grammar" -DPACKAGE="link-grammar" -DVERSION="5.12.3" -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 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=".libs/" -DHAVE_STRNDUP=1 -DHAVE_STRTOK_R=1 -DHAVE_SIGACTION=1 -DHAVE_ALIGNED_ALLOC=1 -DHAVE_POSIX_MEMALIGN=1 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_PRCTL=1 -D__STDC_FORMAT_MACROS=1 -D__STDC_LIMIT_MACROS=1 -DTLS=_Thread_local -DHAVE_PTHREAD_PRIO_INHERIT=1 -DHAVE_PTHREAD=1 -DHAVE_THREADS_H=1 -DHAVE_VISIBILITY=1 -DHAVE_LOCALE_T_IN_LOCALE_H=1 -DHAVE_STDATOMIC_H=1 -DUSE_WORDGRAPH_DISPLAY=1 -DHAVE_SQLITE3=1 -DHAVE_LIBASPELL=1 -DHAVE_ASPELL=1 -DHAVE_PCRE2_H=1 -DHAVE_MAYBE_UNINITIALIZED=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DSTRERROR_R_CHAR_P=1
	Libraries:                       -laspell -lpcre2-8 -lsqlite3 -laspell

Running make fails with:

libtool: link: ar cru .libs/liblink-grammar.a  api.o connectors.o dict-common/dialect.o dict-common/dict-affix-impl.o dict-common/dict-common.o dict-common/dict-internals.o dict-common/dict-locale.o dict-common/dict-utils.o dict-common/file-utils.o dict-common/idiom.o dict-common/print-dict.o dict-common/regex-morph.o dict-file/read-dialect.o dict-file/dictionary.o dict-file/read-dict.o dict-file/read-regex.o dict-file/word-file.o dict-ram/dict-ram.o dict-sql/read-sql.o dict-atomese/read-atomese.o dict-atomese/link-names.o dict-atomese/lookup-atomese.o dict-atomese/fetch-cats.o dict-atomese/sections.o dict-atomese/word-pairs.o dict-atomese/utils.o disjunct-utils.o error.o linkage/analyze-linkage.o linkage/freeli.o linkage/linkage.o linkage/lisjuncts.o linkage/sane.o linkage/score.o memory-pool.o parse/count.o parse/extract-links.o parse/fast-match.o parse/histogram.o parse/parse.o parse/preparation.o parse/prune.o post-process/constituents.o post-process/post-process.o post-process/pp_knowledge.o post-process/pp_lexer.o post-process/pp_linkset.o prepare/build-disjuncts.o prepare/exprune.o print/print.o print/print-util.o print/wcwidth.o resources.o string-set.o string-id.o tokenize/anysplit.o tokenize/lookup-exprs.o tokenize/spellcheck-aspell.o tokenize/spellcheck-hun.o tokenize/tokenize.o tokenize/wg-display.o tokenize/wordgraph.o tracon-set.o utilities.o
ar: dict-atomese/link-names.o: No such file or directory

The link-names.o file is found in:

[root@83f6183df8a9 build]# find . -name "link-names.*"
./link-grammar/link-names.o
./link-grammar/dict-atomese/link-names.lo
./link-grammar/dict-atomese/.libs/link-names.o
./link-grammar/dict-atomese/.deps/link-names.Plo

Sorry for late response. I just now tried to reproduce this, but could not. I don't even see how it is possible; link-names.c is treated just like everything else, here:

dict-sql/read-sql.c \
dict-atomese/read-atomese.c \
dict-atomese/link-names.cc \
dict-atomese/lookup-atomese.cc \
dict-atomese/fetch-cats.cc \
dict-atomese/sections.cc \

it should not be exceptional.

Several quick questions:

  • Since you are building with the AtomSpace installed, does this mean that you plan to experiment with that, or is that just a happenstance?
  • If its 'by accident", perhaps you have a really old version of the AtomSpace installed, older than a few years old? If so, either remove it, or update it: the link-grammar AtomSpace bindings require something relatively recent, from mid-2023 or so, if I recall. There were some synchronized changes, both here and there, that were mutually required.
  • Care to try the current link0-grammar version pulled from github? Maybe that might somehow work better?

I built again using the link-grammar-5.12.3 tag and I got a clean build.

Excellent. Good to hear that. I don't see any differences between that and the master, so I'll just take that to be a fluke.