Skip to content

Instantly share code, notes, and snippets.

@darkgeek
Created May 30, 2019 16:24
Show Gist options
  • Save darkgeek/f927765f98b0e70d594c7e99f01bab10 to your computer and use it in GitHub Desktop.
Save darkgeek/f927765f98b0e70d594c7e99f01bab10 to your computer and use it in GitHub Desktop.
Failed to build openresty on OpenBSD
🕒 05-31 00:13:53 👉 ~/Shares/openresty-1.15.8.2rc0 $ ./configure --prefix=/home/justin/Apps/openresty --with-luajit-ldflags='-lc++abi -lpthread' <
platform: bsd (openbsd)
cp -rp bundle/ build
cd build
cd LuaJIT-2.1-20190507
INFO: found -msse4.2 in cc.
gmake TARGET_STRIP=@: CCDEBUG=-g XCFLAGS='-DLUAJIT_ENABLE_LUA52COMPAT -msse4.2' LDFLAGS='-lc++abi -lpthread' CC=cc PREFIX=/home/justin/Apps/openresty/luajit
==== Building LuaJIT 2.1.0-beta3 ====
gmake -C src
gmake[1]: Entering directory '/home/justin/Shares/openresty-1.15.8.2rc0/build/LuaJIT-2.1-20190507/src'
HOSTCC host/minilua.o
HOSTLINK host/minilua
DYNASM host/buildvm_arch.h
HOSTCC host/buildvm.o
HOSTCC host/buildvm_asm.o
HOSTCC host/buildvm_peobj.o
HOSTCC host/buildvm_lib.o
HOSTCC host/buildvm_fold.o
HOSTLINK host/buildvm
BUILDVM lj_vm.S
ASM lj_vm.o
CC lj_gc.o
BUILDVM lj_ffdef.h
CC lj_err.o
CC lj_char.o
BUILDVM lj_bcdef.h
CC lj_bc.o
CC lj_obj.o
CC lj_buf.o
CC lj_str.o
CC lj_tab.o
CC lj_func.o
CC lj_udata.o
CC lj_meta.o
CC lj_debug.o
CC lj_state.o
CC lj_dispatch.o
CC lj_vmevent.o
CC lj_vmmath.o
CC lj_strscan.o
CC lj_strfmt.o
CC lj_strfmt_num.o
CC lj_api.o
CC lj_profile.o
CC lj_lex.o
CC lj_parse.o
CC lj_bcread.o
CC lj_bcwrite.o
CC lj_load.o
CC lj_ir.o
CC lj_opt_mem.o
BUILDVM lj_folddef.h
CC lj_opt_fold.o
CC lj_opt_narrow.o
CC lj_opt_dce.o
CC lj_opt_loop.o
CC lj_opt_split.o
CC lj_opt_sink.o
CC lj_mcode.o
CC lj_snap.o
CC lj_record.o
CC lj_crecord.o
BUILDVM lj_recdef.h
CC lj_ffrecord.o
CC lj_asm.o
CC lj_trace.o
CC lj_gdbjit.o
CC lj_ctype.o
CC lj_cdata.o
CC lj_cconv.o
CC lj_ccall.o
CC lj_ccallback.o
CC lj_carith.o
CC lj_clib.o
CC lj_cparse.o
CC lj_lib.o
CC lj_alloc.o
CC lib_aux.o
BUILDVM lj_libdef.h
CC lib_base.o
CC lib_math.o
CC lib_bit.o
CC lib_string.o
CC lib_table.o
CC lib_io.o
CC lib_os.o
CC lib_package.o
CC lib_debug.o
CC lib_jit.o
CC lib_ffi.o
CC lib_init.o
AR libluajit.a
CC luajit.o
BUILDVM jit/vmdef.lua
DYNLINK libluajit.so
LINK luajit
OK Successfully built LuaJIT
gmake[1]: Leaving directory '/home/justin/Shares/openresty-1.15.8.2rc0/build/LuaJIT-2.1-20190507/src'
==== Successfully built LuaJIT 2.1.0-beta3 ====
gmake install TARGET_STRIP=@: CCDEBUG=-g XCFLAGS='-DLUAJIT_ENABLE_LUA52COMPAT -msse4.2' LDFLAGS='-lc++abi -lpthread' CC=cc PREFIX=/home/justin/Apps/openresty/luajit DESTDIR=/home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/
==== Installing LuaJIT 2.1.0-beta3 to /home/justin/Apps/openresty/luajit ====
mkdir -p /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/bin /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/include/luajit-2.1 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/share/man/man1 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/pkgconfig /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/share/luajit-2.1.0-beta3/jit /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/share/lua/5.1 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/lua/5.1
cd src && install -m 0755 luajit /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/bin/luajit-2.1.0-beta3
cd src && test -f libluajit.a && install -m 0644 libluajit.a /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/libluajit-5.1.a || :
rm -f /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/libluajit-5.1.so.2.1.0 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/libluajit-5.1.so /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/libluajit-5.1.so.2
cd src && test -f libluajit.so && \
install -m 0755 libluajit.so /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/libluajit-5.1.so.2.1.0 && \
ldconfig -n /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib && \
ln -sf libluajit-5.1.so.2.1.0 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/libluajit-5.1.so && \
ln -sf libluajit-5.1.so.2.1.0 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/libluajit-5.1.so.2 || :
ldconfig: unknown option -- n
usage: ldconfig [-mRrsUv] [path ...]
cd etc && install -m 0644 luajit.1 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/share/man/man1
cd etc && sed -e "s|^prefix=.*|prefix=/home/justin/Apps/openresty/luajit|" -e "s|^multilib=.*|multilib=lib|" luajit.pc > luajit.pc.tmp && \
install -m 0644 luajit.pc.tmp /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/lib/pkgconfig/luajit.pc && \
rm -f luajit.pc.tmp
cd src && install -m 0644 lua.h lualib.h lauxlib.h luaconf.h lua.hpp luajit.h /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/include/luajit-2.1
cd src/jit && install -m 0644 bc.lua bcsave.lua dump.lua p.lua v.lua zone.lua dis_x86.lua dis_x64.lua dis_arm.lua dis_arm64.lua dis_arm64be.lua dis_ppc.lua dis_mips.lua dis_mipsel.lua dis_mips64.lua dis_mips64el.lua vmdef.lua /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/share/luajit-2.1.0-beta3/jit
ln -sf luajit-2.1.0-beta3 /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root//home/justin/Apps/openresty/luajit/bin/luajit
==== Successfully installed LuaJIT 2.1.0-beta3 to /home/justin/Apps/openresty/luajit ====
export LUAJIT_LIB='/home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/lib'
export LUAJIT_INC='/home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/include/luajit-2.1'
cd ..
patching the resty script with hard-coded nginx binary path...
cd nginx-1.15.8
sh ./configure --prefix=/home/justin/Apps/openresty/nginx \
--with-cc-opt='-O2' \
--add-module=../ngx_devel_kit-0.3.1rc1 \
--add-module=../echo-nginx-module-0.61 \
--add-module=../xss-nginx-module-0.06 \
--add-module=../ngx_coolkit-0.2 \
--add-module=../set-misc-nginx-module-0.32 \
--add-module=../form-input-nginx-module-0.12 \
--add-module=../encrypted-session-nginx-module-0.08 \
--add-module=../srcache-nginx-module-0.31 \
--add-module=../ngx_lua-0.10.15 \
--add-module=../ngx_lua_upstream-0.07 \
--add-module=../headers-more-nginx-module-0.33 \
--add-module=../array-var-nginx-module-0.05 \
--add-module=../memc-nginx-module-0.19 \
--add-module=../redis2-nginx-module-0.15 \
--add-module=../redis-nginx-module-0.3.7 \
--add-module=../rds-json-nginx-module-0.15 \
--add-module=../rds-csv-nginx-module-0.09 \
--add-module=../ngx_stream_lua-0.0.7 \
--with-ld-opt='-Wl,-rpath,/home/justin/Apps/openresty/luajit/lib' \
--with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_ssl_module
checking for OS
+ OpenBSD 6.5 amd64
checking for C compiler ... found
+ using Clang C compiler
+ clang version: 7.0.1 (tags/RELEASE_701/final) (based on LLVM 7.0.1)
checking for --with-ld-opt="-Wl,-rpath,/home/justin/Apps/openresty/luajit/lib" ... found
checking for -Wl,-E switch ... found
checking for gcc builtin atomic operations ... found
checking for C99 variadic macros ... found
checking for gcc variadic macros ... found
checking for gcc builtin 64 bit byteswap ... found
checking for unistd.h ... found
checking for inttypes.h ... found
checking for limits.h ... found
checking for sys/filio.h ... found
checking for sys/param.h ... found
checking for sys/mount.h ... found
checking for sys/statvfs.h ... found
checking for crypt.h ... not found
checking for OpenBSD specific features
checking for nobody group ... found
checking for poll() ... found
checking for /dev/poll ... not found
checking for kqueue ... found
checking for kqueue's NOTE_LOWAT ... found
checking for kqueue's EVFILT_TIMER ... found
checking for crypt() ... found
checking for F_READAHEAD ... not found
checking for posix_fadvise() ... not found
checking for O_DIRECT ... not found
checking for F_NOCACHE ... not found
checking for directio() ... not found
checking for statfs() ... found
checking for statvfs() ... found
checking for dlopen() ... found
checking for sched_yield() ... found
checking for sched_setaffinity() ... not found
checking for SO_SETFIB ... not found
checking for SO_REUSEPORT ... found
checking for SO_ACCEPTFILTER ... not found
checking for SO_BINDANY ... found
checking for IP_TRANSPARENT ... not found
checking for IP_BINDANY ... not found
checking for IP_BIND_ADDRESS_NO_PORT ... not found
checking for IP_RECVDSTADDR ... found
checking for IP_SENDSRCADDR ... found
checking for IP_PKTINFO ... not found
checking for IPV6_RECVPKTINFO ... found
checking for TCP_DEFER_ACCEPT ... not found
checking for TCP_KEEPIDLE ... not found
checking for TCP_FASTOPEN ... not found
checking for TCP_INFO ... not found
checking for accept4() ... found
checking for eventfd() ... not found
checking for eventfd() (SYS_eventfd) ... not found
checking for int size ... 4 bytes
checking for long size ... 8 bytes
checking for long long size ... 8 bytes
checking for void * size ... 8 bytes
checking for uint32_t ... found
checking for uint64_t ... found
checking for sig_atomic_t ... found
checking for sig_atomic_t size ... 4 bytes
checking for socklen_t ... found
checking for in_addr_t ... found
checking for in_port_t ... found
checking for rlim_t ... found
checking for uintptr_t ... uintptr_t found
checking for system byte ordering ... little endian
checking for size_t size ... 8 bytes
checking for off_t size ... 8 bytes
checking for time_t size ... 8 bytes
checking for AF_INET6 ... found
checking for setproctitle() ... found
checking for pread() ... found
checking for pwrite() ... found
checking for pwritev() ... found
checking for sys_nerr ... found
checking for localtime_r() ... found
checking for clock_gettime(CLOCK_MONOTONIC) ... found
checking for posix_memalign() ... found
checking for memalign() ... not found
checking for mmap(MAP_ANON|MAP_SHARED) ... found
checking for mmap("/dev/zero", MAP_SHARED) ... found
checking for System V shared memory ... found
checking for POSIX semaphores ... not found
checking for POSIX semaphores in libpthread ... found but is not working
checking for POSIX semaphores in librt ... not found
checking for struct msghdr.msg_control ... found
checking for ioctl(FIONBIO) ... found
checking for struct tm.tm_gmtoff ... found
checking for struct dirent.d_namlen ... found
checking for struct dirent.d_type ... found
checking for sysconf(_SC_NPROCESSORS_ONLN) ... found
checking for sysconf(_SC_LEVEL1_DCACHE_LINESIZE) ... not found
checking for openat(), fstatat() ... found
checking for getaddrinfo() ... found
checking for SOCK_CLOEXEC support ... found
checking for FD_CLOEXEC support ... found
configuring additional modules
adding module in ../ngx_devel_kit-0.3.1rc1
+ ngx_devel_kit was configured
adding module in ../echo-nginx-module-0.61
+ ngx_http_echo_module was configured
adding module in ../xss-nginx-module-0.06
+ ngx_http_xss_filter_module was configured
adding module in ../ngx_coolkit-0.2
+ ngx_coolkit_module was configured
adding module in ../set-misc-nginx-module-0.32
found ngx_devel_kit for ngx_set_misc; looks good.
+ ngx_http_set_misc_module was configured
adding module in ../form-input-nginx-module-0.12
found ngx_devel_kit for ngx_form_input; looks good.
+ ngx_http_form_input_module was configured
adding module in ../encrypted-session-nginx-module-0.08
found ngx_devel_kit for ngx_encrypted_session; looks good.
+ ngx_http_encrypted_session_module was configured
adding module in ../srcache-nginx-module-0.31
+ ngx_http_srcache_filter_module was configured
adding module in ../ngx_lua-0.10.15
checking for LuaJIT library in /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/lib and /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/include/luajit-2.1 (specified by the LUAJIT_LIB and LUAJIT_INC env, with -ldl) ... not found
checking for LuaJIT library in /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/lib and /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/include/luajit-2.1 (specified by the LUAJIT_LIB and LUAJIT_INC env) ... not found
./configure: error: ngx_http_lua_module requires the Lua or LuaJIT library and LUAJIT_LIB is defined as /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/lib and LUAJIT_INC (path for lua.h) /home/justin/Shares/openresty-1.15.8.2rc0/build/luajit-root/home/justin/Apps/openresty/luajit/include/luajit-2.1, but we cannot find LuaJIT there.
ERROR: failed to run command: sh ./configure --prefix=/home/justin/Apps/openresty/nginx \...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment