DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Wiles, Keith" <keith.wiles@intel.com>
To: Hossein Golestani <hosseing@umich.edu>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] Pktgen having problem with Lua on RHEL
Date: Wed, 19 Dec 2018 14:08:37 +0000	[thread overview]
Message-ID: <A0B27BD9-C8CC-4011-9236-C5A1791EFD9B@intel.com> (raw)
In-Reply-To: <CAPtm8pRMhyKxdR6TT6gB1+u6aTTFKgmz+PxsJ8DwP8KFf2Gtxw@mail.gmail.com>



> On Dec 18, 2018, at 7:53 PM, Hossein Golestani <hosseing@umich.edu> wrote:
> 
> Hi,
> 
> I'm having a hard time compiling Pktgen on a Red Hat machine. The source of
> the problem is the Lua library.
> 
> I'm using Pktgen 3.5.9, and it requires Lua 5.3. Standard installation of
> Lua on RHEL ends up having Lua 5.1. So for having the latest release, I
> need to compile Lua from its source. My eventual problem is that I cannot
> appropriately link the compiled Lua library to Pktgen.
> 
> Here's a detailed explanation of what I did:
> 
> Based on the official website of Lua (link
> <http://www.lua.org/manual/5.3/readme.html>), for embedding Lua in C/C++
> programs, the following files are required:
> *lua.h luaconf.h lualib.h lauxlib.h lua.hpp*
> *liblua.a* (which is created after compiling Lua)
> 
> I put these files in the following directory:
> /home/me/lua/
> ├── include
> │   ├── lauxlib.h
> │   ├── luaconf.h
> │   ├── lua.h
> │   ├── lua.hpp
> │   └── lualib.h
> └── liblua.a
> 
> I made the following changes in Pktgen's Makefiles to include the Lua's
> header files and static library shown above:
> In *app/Makefile*:
> 
> Replacing
> 
> *MYLIBS     += -lpktgen_lua $(shell pkg-config --libs-only-l lua5.3)*
> 
> with
> 
> *MYLIBS     += -lpktgen_lua -L:/home/me/lua/liblua.a*

I assume that ‘me’ here is really ‘hossening’ so the real change to is /home/hossening/lua/liblua.a right?

I worry that you have mis-spelled on of the lines. The code linked compiled so it found the include, but not the lib.

Check and make sure you did not mis-spell something here.
> 
> 
> Replacing
> 
> *MYLIB_PATH += -L$(LUA_LIB) $(shell pkg-config --libs-only-L lua5.3)*
> 
> with
> 
> *MYLIB_PATH += -L$(LUA_LIB) **-L:/home/me/lua/liblua.a*
> 
> 
> Replacing
> 
> *CFLAGS     += -I/usr/include/lua5.3*
> 
> with
> 
> *CFLAGS     += -I/home/me/lua/include*
> 
> 
> In *lib/lua/Makefile*:
> 
> Replacing
> 
> *CFLAGS += $(shell pkg-config --cflags lua5.3)*
> 
> with
> 
> *CFLAGS += -I/home/me/lua/include*
> 
> 
> Replacing
> 
> LDLIBS += -L$(SRCDIR)/../lua/$(RTE_TARGET)/lib -llua
> 
> with
> 
> LDLIBS += -L$(SRCDIR)/../lua/$(RTE_TARGET)/lib
> -L:/home/hosseing/lua/liblua.a
> 
> 
> 
> Then, when I make Pktgen, I receive thousands of errors, like this:
> */home/me/pktgen-3.5.9/app/../lib/lua/x86_64-native-linuxapp-gcc/lib/libpktgen_lua.a(rte_lua.o):
> In function `msghandler':*
> */home/me/pktgen-3.5.9/lib/lua/rte_lua.c:244: undefined reference to
> `lua_tolstring'*
> */home/me/pktgen-3.5.9/lib/lua/rte_lua.c:257: undefined reference to
> `luaL_traceback'*
> */home/me/pktgen-3.5.9/lib/lua/rte_lua.c:247: undefined reference to
> `luaL_callmeta'*
> */home/me/pktgen-3.5.9/lib/lua/rte_lua.c:248: undefined reference to
> `lua_type'*
> */home/me/pktgen-3.5.9/lib/lua/rte_lua.c:252: undefined reference to
> `lua_type'*
> */home/me/pktgen-3.5.9/lib/lua/rte_lua.c:252: undefined reference to
> `lua_typename'*
> *...*
> 
> The included Lua header files seem to be OK. The problem seems to be
> because of how I link the liblua.a file. I'd really appreciate it if
> someone could help me on this.
> 
> Thanks,
> Hossein

Regards,
Keith


  reply	other threads:[~2018-12-19 14:08 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-19  1:53 Hossein Golestani
2018-12-19 14:08 ` Wiles, Keith [this message]
2018-12-19 14:52   ` Hossein Golestani

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=A0B27BD9-C8CC-4011-9236-C5A1791EFD9B@intel.com \
    --to=keith.wiles@intel.com \
    --cc=dev@dpdk.org \
    --cc=hosseing@umich.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).