apache / openwhisk-apigateway

Apache OpenWhisk API Gateway service for exposing actions as REST interfaces.
https://openwhisk.apache.org/
Apache License 2.0
64 stars 45 forks source link

openwhisk-apigateway failed to build on aarch64 ——"module 'ngx.process' not found:" #396

Closed thunderZH963 closed 1 year ago

thunderZH963 commented 1 year ago

I can build openwhisk-apigateway('make docker') successfully on x86_64. But when I move to ARM64, some errors occur(when Step 9/21 : RUN echo " ... installing opm packages ... " ), ''' ERROR: module 'ngx.process' not found: no field package.preload['ngx.process'] no file './ngx/process.lua' no file '/usr/local/api-gateway/luajit/share/luajit-2.1.0-beta3/ngx/process.lua' no file '/usr/local/share/lua/5.1/ngx/process.lua' no file '/usr/local/share/lua/5.1/ngx/process/init.lua' no file '/usr/local/api-gateway/luajit/share/lua/5.1/ngx/process.lua' no file '/usr/local/api-gateway/luajit/share/lua/5.1/ngx/process/init.lua' no file './ngx/process.so' no file '/usr/local/lib/lua/5.1/ngx/process.so' no file '/usr/local/api-gateway/luajit/lib/lua/5.1/ngx/process.so' no file '/usr/local/lib/lua/5.1/loadall.so' no file './ngx.so' no file '/usr/local/lib/lua/5.1/ngx.so' no file '/usr/local/api-gateway/luajit/lib/lua/5.1/ngx.so' no file '/usr/local/lib/lua/5.1/loadall.so' ERROR: luajit is required but is not available according to resty: '''

I know that 00c4c7cb5125cf72799c184e0ff538abd9830ea2 supported aarch64, but maybe it not works?

thunderZH963 commented 1 year ago

modify Dockerfile like "https://github.com/G410-SmartNICGroup/openwhisk-apigateway-arm64/blob/master/Dockerfile" is helpful, now solved

marcelfonteles commented 1 year ago

I have tried your implementation and I only needed to change the URL source of PCR on line 86 for that: https://sourceforge.net/projects/pcre/files/pcre/8.37/pcre-8.37.tar.gz/download

After doing that, everything worked fine. Thanks a lot!

And you can see all versions on this site if you need another version: https://sourceforge.net/projects/pcre/files/