gpt4 book ai didi

c++ firebase 段错误,linux,在 std::string::assign 无法访问地址 0xf 处的内存

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:24:24 24 4
gpt4 key购买 nike

在 Linux 上使用 firebase C++ SDK 时出现问题,出于某种原因,它会从库内部抛出段错误。

我有下一个代码:

#include <iostream>
#include "firebase/app.h"
#include "firebase/analytics.h"
extern "C" int common_main(int argc, const char* argv[]);
int main(int argc, const char* argv[]) {
return common_main(argc, argv);
}
int common_main(int argc, const char* argv[]) {
namespace analytics = ::firebase::analytics;
::firebase::App* app;
::firebase::AppOptions appOptions;
appOptions.set_app_id("project-540NUMBERNUMBER67RR"); // changed
appOptions.set_api_key("CoDeCoDeCoDeCoDeOcDeCoDeCoDeCoDeCoDeCod"); // changed
app = ::firebase::App::Create(appOptions);
analytics::Initialize(*app);
return 0;
}

下一个堆栈跟踪:

Program received signal SIGSEGV, Segmentation fault.
std::string::assign (this=this@entry=0x6170d0, __str=<error reading variable: Cannot access memory at address 0xf>)
at /var/tmp/portage/sys-devel/gcc-5.3.0/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:693
693 /var/tmp/portage/sys-devel/gcc-5.3.0/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc: No such file or directory.
(gdb) bt
#0 std::string::assign (this=this@entry=0x6170d0, __str=<error reading variable: Cannot access memory at address 0xf>)
at /var/tmp/portage/sys-devel/gcc-5.3.0/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:693
#1 0x0000000000402175 in std::string::operator= (__str=<error reading variable: Cannot access memory at address 0xf>, this=0x6170d0)
at third_party/crosstool/v18/stable/toolchain/x86_64-grtev4-linux-gnu/include/c++/4.9.x-google/bits/basic_string.h:555
#2 firebase::AppOptions::operator= (this=0x6170c8) at blaze-out/gcc-4.X.Y-crosstool-v18-hybrid-grtev4-k8-opt/genfiles/firebase/app/client/cpp/include/firebase/app.h:23
#3 firebase::App::Create (options=..., name=0x402bb5 "default") at firebase/app/client/cpp/src/app_stub.cc:43
#4 0x00000000004013ae in common_main (argc=1, argv=0x7fffffffdea8) at /home/ivan.sidarau/source/firebase_t/firebaseTest/main.cpp:29
#5 0x0000000000401306 in main (argc=1, argv=0x7fffffffdea8) at /home/ivan.sidarau/source/firebase_t/firebaseTest/main.cpp:14

在 x86_64 平台上。使用 Firebase C++ SDK 1.0 版。

所以问题可能在这段代码/否则 ABI/或 SDK 的某处。

有人遇到过类似的事情吗?

最佳答案

目前无法在 linux 平台上使用 C++ SDK。Google Firebase C++ SDK 在 Android 或 iOS 上使用 JNI/Java SDK 内部结构。它在 Linux 上不可用。

关于c++ firebase 段错误,linux,在 std::string::assign 无法访问地址 0xf 处的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37699030/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com