awslabs / awslabs/aws-lambda-cpp
Error "plugin needed to handle lto object" while building CPP runtime for Lambda
- 主要語言
- C++
- 星號
- 465
- 分支
- 98
- 平均合併
- 12 小時 47 分鐘
- 30 天內合併 PR
- 3
描述
Following the blog post "https://aws.amazon.com/blogs/compute/introducing-the-c-lambda-runtime/" to create a custom CPP Lambda function, received an error "/usr/bin/ld: runtime.cpp.o: plugin needed to handle lto object"
Complete error -
[ 50%] Building CXX object CMakeFiles/hello.dir/main.cpp.o
[100%] Linking CXX executable hello
/usr/bin/ld: runtime.cpp.o: plugin needed to handle lto object
CMakeFiles/hello.dir/main.cpp.o: In function `my_handler(aws::lambda_runtime::invocation_request const&)':
main.cpp:(.text+0x3f): undefined reference to `aws::lambda_runtime::invocation_response::success(std::string const&, std::string const&)'
CMakeFiles/hello.dir/main.cpp.o: In function `main':
main.cpp:(.text.startup+0x23): undefined reference to `aws::lambda_runtime::run_handler(std::function const&)'
collect2: error: ld returned 1 exit status
make[2]: *** [hello] Error 1
make[1]: *** [CMakeFiles/hello.dir/all] Error 2
make: *** [all] Error 2
command executed
$ cmake3 .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=~/out ----> Successful
$ make 3 -----> Errors as above
貢獻指南
研究方向
從連結的 AWS C++ Lambda runtime 部落格文章開始,使用報告中的 cmake3 設定和 make 命令重現失敗。利用 linker 輸出調查 LTO 外掛程式和缺少符號的錯誤;當 hello 可執行檔成功連結時即完成。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- aws, cmake, cpp
- 領域
- build-system, cloud
- Issue 類型
- 缺陷
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 活躍度
- 停滯
- 描述清晰度
- 需要釐清
- 新手友好度
- 25/100