问题描述
我尝试在osx yosemite(10.10.4)下制作Gunplot 5.0.0,它带有错误:
I try to make gunplot 5.0.0 under osx yosemite(10.10.4), and it comes with errors:
$ make
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
Making all in config
make[2]: Nothing to be done for `all'.
Making all in m4
make[2]: Nothing to be done for `all'.
Making all in term
make[2]: Nothing to be done for `all'.
Making all in src
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
Making all in wxterminal
make[4]: Nothing to be done for `all'.
Making all in qtterminal
make[4]: Nothing to be done for `all'.
c++ -g -O2 -o gnuplot alloc.o axis.o breaders.o boundary.o color.o command.o contour.o datablock.o datafile.o dynarray.o eval.o external.o fit.o gadgets.o getcolor.o graph3d.o graphics.o help.o hidden3d.o history.o internal.o interpol.o libcerf.o matrix.o misc.o mouse.o multiplot.o parse.o plot.o plot2d.o plot3d.o pm3d.o readline.o save.o scanner.o set.o show.o specfun.o standard.o stats.o stdfn.o tables.o tabulate.o term.o time.o unset.o util.o util3d.o variable.o version.o -lreadline -lncurses -lz -llua -liconv
Undefined symbols for architecture x86_64:
"_luaL_checkint", referenced from:
_LUA_GP_int_error in term.o
_LUA_GP_int_warn in term.o
(maybe you meant: _luaL_checkinteger)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [gnuplot] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
似乎与lua有关.这是我的lua env:
Seems like something related to lua. This is my lua env:
$ lua -v
Lua 5.3.0 Copyright (C) 1994-2015 Lua.org, PUC-Rio
我不了解make的输出,请帮忙!
I don't understand the make's output, please help!
推荐答案
似乎您正在编译的模块/应用程序不是与Lua 5.3兼容.它使用luaL_checkint
,但是Lua 5.3使用luaL_checkinteger
.您需要更新模块或使用兼容性开关LUA_COMPAT_APIINTCASTS
(LUA_COMPAT_5_2
应该可以正常工作,因为它包含LUA_COMPAT_APIINTCASTS
).
It appears that the module/application you are compiling is not Lua 5.3-compatible. It uses luaL_checkint
, but Lua 5.3 is using luaL_checkinteger
. You need to update the module or use the compatibility switch LUA_COMPAT_APIINTCASTS
(LUA_COMPAT_5_2
should work as well as it includes LUA_COMPAT_APIINTCASTS
).
这篇关于无法在osx优胜美地上绘制炮台图.未定义的符号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!