[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Building lua wrapper for coolprop
- From: Christophe Jorssen <jorssen.leraincy@...>
- Date: Mon, 20 Jun 2016 11:34:31 +0200
Hello all and sorry for bumping this really old post of mine.
2015-05-06 11:25 GMT+02:00 Christophe Jorssen <jorssen.leraincy@free.fr>:
> Hello all,
>
> I'm trying to install the lua wrapper provided with coolprop
> (http://www.coolprop.org/) under debian sid i386 with lua 5.2 (long term
> goal: call coolprop from luatex).
>
> I followed the instruction found here
> (https://github.com/CoolProp/CoolProp/tree/master/wrappers/Lua) that is:
>
> *Manual Lua (PUC) Installation*
>
> 1. First you need to build shared library version of a CoolLib library and
> install it somewhere in your operating system's library search path
> (instructions are here :
> http://www.coolprop.org/coolprop/wrappers/SharedLibrary/index.html).
> 2. Next you need to compile coolprop/cpapi.c wrapper. Easiest way to do it
> is to run make on Lua wrapper's root folder.
> 3. Then place the resulting coolprop/cpapi.so in your Lua's package.cpath,
> and there under coolprop directory.
> 4. Done.
>
> But running lua example.lua from the CoolProp/wrappers/Lua directory
> complains:
>
> lua: /usr/share/lua/5.2/coolprop.lua:13: Unable to load Lua CoolProp C API
> Wrapper.
> stack traceback:
> [C]: in function 'assert'
> /usr/share/lua/5.2/coolprop.lua:13: in main chunk
> [C]: in function 'require'
> example.lua:1: in main chunk
> [C]: in ?
>
> Lines 12 and 13 of coolprop.lua are:
>
> local ok, capi = pcall(require, "coolprop.capi")
> assert(ok, "Unable to load Lua CoolProp C API Wrapper.")
>
> Indeed, there is no coolprop.capi there. Any idea of something I may have
> done wrong?
>
I tried again with a fresh install of a debian jessie.
Here is what I did.
1) Install lua5.2
2) Make my own luarocks (as debian does not support lua5.2 for luarocks AFAIU)
This is my ./configure command line
./configure --prefix=$HOME/luarocks --lua-version=5.2
3) luarocks works ok and then I set paths as said in the doc that is :
eval $(luarocks path --bin)
FYI :
export LUA_PATH='/home/christophe/.luarocks/share/lua/5.2/?.lua;/home/christophe/.luarocks/share/lua/5.2/?/init.lua;/home/christophe/luarocks/share/lua/5.2/?.lua;/home/christophe/luarocks/share/lua/5.2/?/init.lua;/usr/local/share/lua/5.2/?.lua;/usr/local/share/lua/5.2/?/init.lua;/usr/local/lib/lua/5.2/?.lua;/usr/local/lib/lua/5.2/?/init.lua;/usr/share/lua/5.2/?.lua;/usr/share/lua/5.2/?/init.lua;./?.lua'
export LUA_CPATH='/home/christophe/.luarocks/lib/lua/5.2/?.so;/home/christophe/luarocks/lib/lua/5.2/?.so;/usr/local/lib/lua/5.2/?.so;/usr/lib/x86_64-linux-gnu/lua/5.2/?.so;/usr/lib/lua/5.2/?.so;/usr/local/lib/lua/5.2/loadall.so;./?.so'
export PATH='/home/christophe/.luarocks/bin:/home/christophe/luarocks/bin:/home/christophe/bin:/opt/texbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games'
4) As Hisham recommanded :
git clone git@github.com:ipese/LuaCoolProp.git
then followed instructions there for linux after editing the Makefile
to make it work for lua5.2
luarocks --local build luacoolprop-scm-1.rockspec
luarocks --local pack luacoolprop
luarocks install luacoolprop-scm-1.linux-x86_64.rock
now here is my directory structure for luarocks (I removed the
.luarocks/ dir and I installed luasec and luasokuet rocks).
luarocks/
├── bin
│ ├── luarocks -> luarocks-5.2
│ ├── luarocks-5.2
│ ├── luarocks-admin -> luarocks-admin-5.2
│ └── luarocks-admin-5.2
├── etc
│ └── luarocks
│ └── config-5.2.lua
├── lib
│ ├── lua
│ │ └── 5.2
│ │ ├── coolprop
│ │ │ └── capi.so
│ │ ├── mime
│ │ │ └── core.so
│ │ ├── socket
│ │ │ ├── core.so
│ │ │ ├── serial.so
│ │ │ └── unix.so
│ │ └── ssl.so
│ └── luarocks
│ └── rocks
│ ├── luacoolprop
│ │ └── scm-1
│ │ ├── doc
│ │ │ ├── LICENSE
│ │ │ └── README.md
│ │ ├── luacoolprop-scm-1.rockspec
│ │ └── rock_manifest
│ ├── luasec
│ │ └── 0.6-1
│ │ ├── luasec-0.6-1.rockspec
│ │ ├── rock_manifest
│ │ └── samples
│ │ ├── certs
│ │ │ ├── all.bat
│ │ │ ├── clientA.bat
│ │ │ ├── clientA.cnf
│ │ │ ├── clientA.sh
│ │ │ ├── clientB.bat
│ │ │ ├── clientB.cnf
│ │ │ ├── clientB.sh
│ │ │ ├── rootA.bat
│ │ │ ├── rootA.cnf
│ │ │ ├── rootA.sh
│ │ │ ├── rootB.bat
│ │ │ ├── rootB.cnf
│ │ │ ├── rootB.sh
│ │ │ ├── serverA.bat
│ │ │ ├── serverA.cnf
│ │ │ ├── serverA.sh
│ │ │ ├── serverB.bat
│ │ │ ├── serverB.cnf
│ │ │ └── serverB.sh
│ │ ├── chain
│ │ │ ├── client.lua
│ │ │ ├── server.lua
│ │ │ └── util.lua
│ │ ├── dhparam
│ │ │ ├── client.lua
│ │ │ ├── params.sh
│ │ │ └── server.lua
│ │ ├── digest
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── ecdh
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── info
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── key
│ │ │ ├── genkey.sh
│ │ │ └── loadkey.lua
│ │ ├── loop
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── loop-gc
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── oneshot
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── README
│ │ ├── sni
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── verification
│ │ │ ├── fail-string
│ │ │ │ ├── client.lua
│ │ │ │ └── server.lua
│ │ │ ├── fail-table
│ │ │ │ ├── client.lua
│ │ │ │ └── server.lua
│ │ │ └── success
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── verify
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── want
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ ├── wantread
│ │ │ ├── client.lua
│ │ │ └── server.lua
│ │ └── wantwrite
│ │ ├── client.lua
│ │ └── server.lua
│ ├── luasocket
│ │ └── 3.0rc1-2
│ │ ├── doc
│ │ │ ├── dns.html
│ │ │ ├── ftp.html
│ │ │ ├── http.html
│ │ │ ├── index.html
│ │ │ ├── installation.html
│ │ │ ├── introduction.html
│ │ │ ├── ltn12.html
│ │ │ ├── lua05.ppt
│ │ │ ├── luasocket.png
│ │ │ ├── mime.html
│ │ │ ├── reference.css
│ │ │ ├── reference.html
│ │ │ ├── smtp.html
│ │ │ ├── socket.html
│ │ │ ├── tcp.html
│ │ │ ├── udp.html
│ │ │ └── url.html
│ │ ├── etc
│ │ │ ├── b64.lua
│ │ │ ├── check-links.lua
│ │ │ ├── check-memory.lua
│ │ │ ├── cookie.lua
│ │ │ ├── dict.lua
│ │ │ ├── dispatch.lua
│ │ │ ├── eol.lua
│ │ │ ├── forward.lua
│ │ │ ├── get.lua
│ │ │ ├── links
│ │ │ ├── lp.lua
│ │ │ ├── qp.lua
│ │ │ ├── README
│ │ │ └── tftp.lua
│ │ ├── luasocket-3.0rc1-2.rockspec
│ │ ├── rock_manifest
│ │ ├── samples
│ │ │ ├── cddb.lua
│ │ │ ├── daytimeclnt.lua
│ │ │ ├── echoclnt.lua
│ │ │ ├── echosrvr.lua
│ │ │ ├── listener.lua
│ │ │ ├── lpr.lua
│ │ │ ├── mclisten.lua
│ │ │ ├── mcsend.lua
│ │ │ ├── README
│ │ │ ├── talker.lua
│ │ │ └── tinyirc.lua
│ │ └── test
│ │ ├── auth
│ │ │ └── index.html
│ │ ├── cgi
│ │ │ ├── cat
│ │ │ ├── cat-index-html
│ │ │ ├── env
│ │ │ ├── query-string
│ │ │ ├── redirect-loop
│ │ │ └── request-uri
│ │ ├── dicttest.lua
│ │ ├── excepttest.lua
│ │ ├── find-connect-limit
│ │ ├── ftptest.lua
│ │ ├── hello.lua
│ │ ├── httptest.lua
│ │ ├── index.html
│ │ ├── ltn12test.lua
│ │ ├── luasocket.png
│ │ ├── mimetest.lua
│ │ ├── README
│ │ ├── smtptest.lua
│ │ ├── stufftest.lua
│ │ ├── tcp-getoptions
│ │ ├── test_bind.lua
│ │ ├── testclnt.lua
│ │ ├── test_getaddrinfo.lua
│ │ ├── testmesg.lua
│ │ ├── test_socket_error.lua
│ │ ├── testsrvr.lua
│ │ ├── testsupport.lua
│ │ ├── tftptest.lua
│ │ ├── udpconnectclnt.lua
│ │ ├── udpconnectsrvr.lua
│ │ ├── udp-zero-length-send
│ │ ├── udp-zero-length-send-recv
│ │ ├── unixclnt.lua
│ │ ├── unixsrvr.lua
│ │ ├── upload.html
│ │ ├── urltest.lua
│ │ ├── utestclnt.lua
│ │ └── utestsrvr.lua
│ └── manifest
└── share
└── lua
└── 5.2
├── coolprop
│ └── ffi.lua
├── coolprop.lua
├── ltn12.lua
├── luarocks
│ ├── add.lua
│ ├── admin_remove.lua
│ ├── build
│ │ ├── builtin.lua
│ │ ├── cmake.lua
│ │ ├── command.lua
│ │ └── make.lua
│ ├── build.lua
│ ├── cache.lua
│ ├── cfg.lua
│ ├── command_line.lua
│ ├── config_cmd.lua
│ ├── deps.lua
│ ├── dir.lua
│ ├── doc.lua
│ ├── download.lua
│ ├── fetch
│ │ ├── cvs.lua
│ │ ├── git_file.lua
│ │ ├── git_http.lua
│ │ ├── git_https.lua
│ │ ├── git.lua
│ │ ├── git_ssh.lua
│ │ ├── hg_http.lua
│ │ ├── hg_https.lua
│ │ ├── hg.lua
│ │ ├── hg_ssh.lua
│ │ ├── sscm.lua
│ │ └── svn.lua
│ ├── fetch.lua
│ ├── fs
│ │ ├── lua.lua
│ │ ├── tools.lua
│ │ ├── unix
│ │ │ └── tools.lua
│ │ ├── unix.lua
│ │ ├── win32
│ │ │ └── tools.lua
│ │ └── win32.lua
│ ├── fs.lua
│ ├── help.lua
│ ├── index.lua
│ ├── install.lua
│ ├── lint.lua
│ ├── list.lua
│ ├── loader.lua
│ ├── make.lua
│ ├── make_manifest.lua
│ ├── manif_core.lua
│ ├── manif.lua
│ ├── new_version.lua
│ ├── pack.lua
│ ├── path_cmd.lua
│ ├── path.lua
│ ├── persist.lua
│ ├── purge.lua
│ ├── refresh_cache.lua
│ ├── remove.lua
│ ├── repos.lua
│ ├── require.lua
│ ├── search.lua
│ ├── show.lua
│ ├── site_config.lua
│ ├── tools
│ │ ├── patch.lua
│ │ ├── tar.lua
│ │ └── zip.lua
│ ├── type_check.lua
│ ├── unpack.lua
│ ├── upload
│ │ ├── api.lua
│ │ └── multipart.lua
│ ├── upload.lua
│ ├── util.lua
│ ├── validate.lua
│ └── write_rockspec.lua
├── mime.lua
├── socket
│ ├── ftp.lua
│ ├── headers.lua
│ ├── http.lua
│ ├── smtp.lua
│ ├── tp.lua
│ └── url.lua
├── socket.lua
├── ssl
│ └── https.lua
└── ssl.lua
Finally :
christophe@uranium:~$ lua
Lua 5.2.3 Copyright (C) 1994-2013 Lua.org, PUC-Rio
> require'coolprop'
/home/christophe/luarocks/share/lua/5.2/coolprop.lua:13: Unable to
load Lua CoolProp C API Wrapper.
stack traceback:
[C]: in function 'assert'
/home/christophe/luarocks/share/lua/5.2/coolprop.lua:13: in main chunk
[C]: in function 'require'
stdin:1: in main chunk
[C]: in ?
>
Same error as last year...
Do you have an idea why it still does not work?
Thanks
--
Christophe