awslabs / awslabs/aws-lambda-cpp
Cross-compiling from Ubuntu for aarch64
- 主要言語
- C++
- スター
- 465
- フォーク
- 98
- 平均マージ
- 12時間 47分
- マージ済み PR(30日)
- 3
説明
In the table of supported platforms it looks like the only way to target arm64 architecture for lambda is to compile on Amazon Linux 2.
Would it be possible to support cross-compiling from other OS's? Specifically Ubuntu 22.04?
My lambda function seems to build fine but its an error in the packaging stage:
```
cd .../build/lambda/src/aws && ../../vcpkg_installed/arm64-linux-release/share/aws-lambda-runtime/packager .../build/lambda/src/aws/test_lambda
not a dynamic executable
make[3]: *** [src/aws/CMakeFiles/aws-lambda-package-test_lambda.dir/build.make:73: src/aws/CMakeFiles/aws-lambda-package-test_lambda] Error 1
make[3]: Leaving directory '.../build/lambda'
make[2]: *** [CMakeFiles/Makefile2:3032: src/aws/CMakeFiles/aws-lambda-package-test_lambda.dir/all] Error 2
make[2]: Leaving directory '.../build/lambda'
make[1]: *** [CMakeFiles/Makefile2:3039: src/aws/CMakeFiles/aws-lambda-package-test_lambda.dir/rule] Error 2
make[1]: Leaving directory '..../build/lambda'
make: *** [Makefile:213: src/aws/CMakeFiles/aws-lambda-package-test_lambda.dir/rule] Error 2
```
コントリビューションガイド
調査の方向性
まず、レポートに示されている「supported-platforms」テーブルと aws-lambda-runtime/packager の呼び出しから始め、次に Ubuntu 22.04 上で arm64 向けの CMake パッケージングターゲットを再現します。Ubuntu から test_lambda ターゲットが「not a dynamic executable」エラーなしで正常にパッケージ化され、対応プラットフォームのドキュメントにその結果が反映されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- aws, cmake, cpp
- 領域
- build-system, cloud
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100