1

ximpleware_2.11_c在centos 6.5 64位下编译ok,但是在ubuntu 14.04 64位下有错误。

海湾合作委员会 说:

vtdNav.o:在函数'parseDouble'中:未定义对'pow'的引用

...对“fmod”的未定义引用

...未定义的对“地板”的引用

...对“ceil”的未定义引用

我检查了makefile,发现了'-lm'。

我的 vtd-xml 下载链接:http: //sourceforge.net/projects/vtd-xml/files/vtd-xml/ximpleware_2.11/

如何在 ubuntu 14.04 下构建它?感谢您的答复。

4

1 回答 1

1

对于那个特定的版本,你稍微修改了makefile。您需要将“-lm”附加到每个链接依赖语句。下面为您展示更改前后的情况。请注意,您需要滚动到语句的末尾。前

 benchmark_vtdxml: benchmark_vtdxml.o arrayList.o fastIntBuffer.o fastLongBuffer.o contextBuffer.o vtdNav.o vtdGen.o autoPilot.o XMLChar.o helper.o lex.yy.o l8.tab.o literalExpr.o numberExpr.o pathExpr.o filterExpr.o binaryExpr.o unaryExpr.o funcExpr.o locationPathExpr.o intHash.o unionExpr.o decoder.o XMLModifier.o nodeRecorder.o indexHandler.o bookMark.o elementFragmentNs.o transcoder.o textIter.o variableExpr.o cachedExpr.o

benchmark_vtdxml: benchmark_vtdxml.o arrayList.o fastIntBuffer.o fastLongBuffer.o contextBuffer.o vtdNav.o vtdGen.o autoPilot.o XMLChar.o helper.o lex.yy.o l8.tab.o literalExpr.o numberExpr.o pathExpr.o filterExpr.o binaryExpr.o unaryExpr.o funcExpr.o locationPathExpr.o intHash.o unionExpr.o decoder.o XMLModifier.o nodeRecorder.o indexHandler.o bookMark.o elementFragmentNs.o transcoder.o textIter.o variableExpr.o cachedExpr.o -lm
于 2015-10-10T01:50:32.910 回答