在cygwin中安装titan.core时出错

问题描述 投票:0回答:1

安装 Titan 时(从站点获取的存储库 https://gitlab.eclipse.org/eclipse/titan/titan.core),并创建一个 Makefile,如下代码片段所示,出现如下错误

生成文件

TTCN3_DIR:=  D:\cygwin64\home\SUBBARAMAIAH\Install
OPENSSL_DIR := /usr
JDKDIR :=  C:\Program Files\Java\jdk-21
XMLDIR := /usr
JNI := yes
GEN_PDF := no

错误:

SUBBARAMAIAH@SUBBARAMAIAH ~/titan.core
$ make -j
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core/common'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core/common'
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core/compiler2'
make -C asn1
make -C ttcn3
make[2]: Entering directory '/home/SUBBARAMAIAH/titan.core/compiler2/asn1'
make[2]: Entering directory '/home/SUBBARAMAIAH/titan.core/compiler2/ttcn3'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/SUBBARAMAIAH/titan.core/compiler2/asn1'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/SUBBARAMAIAH/titan.core/compiler2/ttcn3'
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core/compiler2'
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core/repgen'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core/repgen'
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core/xsdconvert'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core/xsdconvert'
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core/mctr2'
make[2]: Entering directory '/home/SUBBARAMAIAH/titan.core/mctr2/cli'
  (C++)  Cli.cc
Cli.cc:45:10: fatal error: editline/readline.h: No such file or directory
   45 | #include <editline/readline.h>
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [../../Makefile.genrules:97: Cli.o] Error 1
make[2]: Leaving directory '/home/SUBBARAMAIAH/titan.core/mctr2/cli'
make[1]: *** [Makefile:32: all] Error 2
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core/mctr2'
make: *** [Makefile:65: all] Error 2

此外,在清理编译文件时出现错误,如下所示:

$ make clean
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core/common'
rm -f  memory.o new.o userinfo.o path.o config_preproc.o Quadruple.o Path2.o ModuleVersion.o JSON_Tokenizer.o UnicharPattern.o openssl_version.o NetworkHandler.o pattern_la.o pattern_p.o pattern_uni.o config_preproc_la.o config_preproc_p.tab.o git_version.o git_version.c
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core/common'
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core/compiler2'
make[2]: Entering directory '/home/SUBBARAMAIAH/titan.core/compiler2/asn1'
rm -f libasn1_compiler.a AST_asn1.o Ref.o Block.o Object.o OCSV.o Tag.o TableConstraint.o TokenBuf.o Type_parse.o asn1la.yy.o asn1p.tab.o asn1_preparser.lex.o
make[2]: Leaving directory '/home/SUBBARAMAIAH/titan.core/compiler2/asn1'
make[2]: Entering directory '/home/SUBBARAMAIAH/titan.core/compiler2/ttcn3'
rm -f libttcn3_compiler.a ArrayDimensions.o AST_ttcn3.o Attributes.o ILT.o PatternString.o RawAST.o Statement.o TtcnTemplate.o Templatestuff.o TextAST.o Ttcnstuff.o compiler.o port.o signature.o BerAST.o JsonAST.o Ttcn2Json.o profiler.o OerAST.o PerAST.o lex.ttcn3.o compiler.tab.o lex.rawAST.o rawAST.tab.o charstring_la.o pstring_la.o comptype_attrib_la.o coding_attrib_la.o coding_attrib_p.o ttcn3_preparser.lex.o ../../common/JSON_Tokenizer.o
make[2]: Leaving directory '/home/SUBBARAMAIAH/titan.core/compiler2/ttcn3'
rm -f compiler.exe ttcn3_makefilegen.exe tcov2lcov.exe encdec.o enum.o functionref.o record.o record_of.o union.o PredefFunc.o AST.o Code.o Constraint.o CompilerError.o CompField.o CompType.o EnumItem.o Identifier.o Int.o main.o Real.o Setting.o SigParam.o string.o subtype.o Stopwatch.o Type.o Type_chk.o Type_codegen.o TypeCompat.o Typestuff.o ustring.o Value.o Valuestuff.o XerAttributes.o subtypestuff.o CodeGenHelper.o DebuggerStuff.o XSD_Types.o makefile.o xpather.o ProjectGenHelper.o tcov2lcov.o
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core/compiler2'
make[1]: Entering directory '/home/SUBBARAMAIAH/titan.core'
make[1]: *** repgen: No such file or directory.  Stop.
make[1]: Leaving directory '/home/SUBBARAMAIAH/titan.core'
make: *** [Makefile:65: clean] Error 2

如果您能帮助我理解此错误的原因和解决方案,我将不胜感激。谢谢。

installation makefile titan ttcn
1个回答
0
投票

您可能没有安装

libreadline-devel
,或者它安装在不在您的包含路径中的文件夹中。

如果根本没有安装,只需安装此软件包即可。

在后一种情况下,在

Makefile.personal
中添加 CPPFLAGS 的正确路径,这是 titan 的首选 Makefile 以设置您自己的更改。可能还需要库路径:

CPPFLAGS := -I/path/to/libreadline/include -L/path/to/libreadline/lib

还要检查您的 libedit 版本。如果是 0.53.0 或更早版本,您还需要这个:

OLD_LIBEDIT := yes

否则你的构建将会失败。

确保安装此处列出的所有其他依赖项:

Titan 安装指南第 1.5 节,第 8/c 段。

© www.soinside.com 2019 - 2024. All rights reserved.