构建共享库时发生错误
Rcpp: error occured building shared library
我在一个名为PSM.cpp的文件中有一个cpp代码,如下所示,
#include <Rcpp.h>
// [[Rcpp::export]]
std::vector<std::string> useInitLists() {
std::vector<std::string> vec = {"larry", "curly", "moe"};
return vec;
}
当我编译下面的代码时,我得到了下面的错误:
> Rcpp::sourceCpp("PSM.cpp")
g++ -m64 -I"C:/PROGRA~1/R/R-30~1.2/include" -DNDEBUG -I"C:/Users/30708/Documents/R/win-library/3.0/Rcpp/include" -I"d:/RCompile/CRANpkg/extralibs64/local/include" -O2 -Wall -mtune=core2 -c PSM.cpp -o PSM.o
PSM.cpp: In function 'std::vector<std::basic_string<char> > useInitLists()':
PSM.cpp:5:60: error: in C++98 'vec' must be initialized by constructor, not by '{...}'
PSM.cpp:5:60: error: could not convert '{"larry", "curly", "moe"}' from '<brace-enclosed initializer list>' to 'std::vector<std::basic_string<char> >'
make: *** [PSM.o] Error 1
Error in Rcpp::sourceCpp("PSM.cpp") :
Error 1 occurred building shared library.
有人可以建议什么是错误的意思和如何解决相同的?谢谢。
您可以使用-std=c++0x
,但我从未在Windows上使用过g++。
相关文章:
- 加载共享库时C++错误:libopencv_ximgproc.so.4.4
- 共享内存:MapViewOfFile 返回错误 5
- 为 Python 构建共享库C++时出现分段错误
- 多线程减慢程序速度:无错误共享,无互斥锁,无缓存未命中,无小工作量
- 当 2 个线程共享同一物理内核时,具有错误共享的易失性增量在发布中的运行速度比在调试中慢
- c++ 链接器错误"针对'.rodata.str1.1'的重新定位R_X86_64_32"链接 CXX 共享库 libsrt.so
- 共享指针取消引用错误
- 避免错误共享以提高性能
- 在共享内存中插入映射映射时出现编译器错误
- OpenMP 环路阵列访问中的错误共享
- OpenMP并行区域中的std::vector push_back会导致错误共享吗
- Eigen & OpenMP : 由于错误共享和线程开销,没有并行化
- 多线程效率低下:调试错误共享
- boost::detail::spinlock_pool中的错误共享
- 错误共享和原子变量
- 缓存行、错误共享和对齐
- CUDA错误:共享数据太多(0x4018字节,最大0x4000):额外的0x18字节从哪里来
- C++中的错误共享
- c++使用' .reserve() '填充' std::vector '作为防止多线程缓存无效和错误共享的一种方
- 保护成员变量的错误共享