Unable to make a gun on osx yosemite. Undefined characters

I try to make gunplot 5.0.0 under osx yosemite (10.10.4) and it comes up 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 

Something seems to be related to lua. This is my lua env:

 $ lua -v Lua 5.3.0 Copyright (C) 1994-2015 Lua.org, PUC-Rio 

I do not understand the output, please help!

+4
source share
2 answers

It looks like the module / application you are compiling is not Lua 5.3-compatible . It uses luaL_checkint , but Lua 5.3 uses luaL_checkinteger . You need to update the module or use the compatibility switch LUA_COMPAT_APIINTCASTS ( LUA_COMPAT_5_2 should work just like it does LUA_COMPAT_APIINTCASTS ).

+3
source

I had the same problem when using macports and trying to compile gnuplot (as a dependency for latex2rtf). In the end, the fix was relatively simple ...

In the version of gnuplot I need (gnuplot-5.0.1), there are two links to luaL_checkint in the lua.trm file found in the term folder:

 ./term/lua.trm: t_num = luaL_checkint(L, 1); ./term/lua.trm: t_num = luaL_checkint(L, 1); ./term/lua.trm: token_cnt = luaL_checkinteger(L, 1); 

Changing luaL_checkint to luaL_checkinteger did the trick. See Paul Kulchenko's answer for this compatibility issue.

+1
source

All Articles