使用 -march 编译会导致线程说"pure virtual method called"
Compiling with -march causes threads to say "pure virtual method called"
我正在尝试通过带有-march=armv8-a
标志的gcc编译我的C++ Raspberry Pi 3代码。但是,使用此标志会导致我的线程通过说pure virtual method called
而失败。我知道这是-march=armv8-a
标志,因为当我在没有它的情况下编译它时,线程会再次开始工作。
请注意:线程甚至没有启动,它只是给出了一个pure virtual method called
有人可以在他们的 Raspberry Pi 3 上用-march=armv8-a
编译它并报告他们得到的东西吗?
#include <iostream>
#include <thread>
#include <unistd.h>
void threadedFunction()
{
std::cout << "Hello from thread" << std::endl;
}
int main()
{
std::thread t1(threadedFunction);
sleep(2);
return 0;
}
由于
armv8-a
使用 64 位体系结构,因此使用 -march=armv8-a
标志将为 64 位计算机进行编译。但是,许多树莓派操作系统(映像(是32位的,这可能会导致崩溃或错误。
信用:https://stackoverflow.com/users/1505939/m-m
相关文章:
- C++核心准则 C35 对于接口类"A base class destructor should be either public and virtual, or protected and nonv
- 当我从下面的代码中删除关键字 virtual 时,它可以正常工作,否则会出现错误。在这里"virtual"字的意义是什么?
- 在基类中调用的 VIrtual 基函数,C++
- C++类:virtual和override,或者两者都没有
- g++ [[noreturn]] on a virtual method
- 错误"pure virtual method called",当此方法已被覆盖时
- 为什么C++尝试/捕获没有捕获"pure virtual call"异常?
- 防止 CRTP 特征码在"pure virtual"调用中堆栈溢出
- 使用 -march 编译会导致线程说"pure virtual method called"
- C++ "Pure Virtual Function Being Called"失败
- 如何在Visual Studio 2015中显示"unimplemented pure virtual"?
- 在 gcc 4.4 上"pure virtual function called",但在较新版本或 clang 3.4 上不
- 堆栈帧内重复的内联构造函数会导致"pure virtual method called"?
- 避免派生类C++中的"Pure Virtual Function Call"
- 如何解决"pure virtual method called"
- 如何在 Xcode 中追踪"libc++abi.dylib: Pure virtual function called!"
- C++:莫名其妙"pure virtual function call"错误
- 堆栈跟踪中"pure virtual"调用的含义是什么?
- C++ 临时 - "pure virtual method called"
- "R6025 - pure virtual call" in 显示列表, OpenGL, C++