我正在使用qmake在Ubuntu上交叉编译我的基于ARM的程序。我遇到了这个线程中描述的多线程问题:
C++ 11 Threads, Error Pure virtual function called
一个答案建议将标记添加到编译中:
g++ -pthread -std=c++11 -D__GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2,4} thread1.cpp
我不确定如何在我的qmake项目文件中添加此-D__GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2,4}
。
我做了QMAKE_CXXFLAGS += -D__GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2,4}
。我的错误仍然存在,所以我想确认这是否是添加该标志的正确方法。
答案 0 :(得分:0)
这是一个bash glob / wildcard。扩展到
-D__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 -D__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 -D__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4