jjzjj

java - 带有 C++ 的 JNI 在 cout、printf 和方法调用上不断崩溃

我正在用C++编写我的第一个JNI程序,并制作了一些测试方法以确保一切正常。问题是:当我调用方法测试时,它给出的结果波动很大。有时它会永远运行,有时我会遇到构建错误,有时我会收到fatalerror和错误消息。这不仅发生在printf和std::cout上,而且发生在方法调用上(然后我总是遇到fatalerror。我没有在问题中包含一个例子)。我看不到错误。希望得到一些帮助。我目前使用g++作为编译器,还有其他选项:-D__int64=int64_t。Java类:publicclassJNI{publicstaticnativeinttest();publicstaticnativei

c++ - 调用 SDL_SetVideoMode 时出现段错误

我无法确定这里出了什么问题。我是一个团队的一员,我们正在使用SDL处理图形。当我运行我们的test_SDL.cc程序时(只是为了查看所有设置是否正确),我是唯一遇到段错误的人。相关代码如下:intmain(intargc,char**arg){//Initializingif(-1==SDL_Init(SDL_INIT_EVERYTHING))return1;SDL_Surface*screen{nullptr};SDL_Surface*hello{nullptr};screen=SDL_SetVideoMode(640,480,32,SDL_SWSURFACE);...}当SDL_S

c++ - main 之外的段错误

我正在处理一个大型的混合C++/Fortran项目。目前,可执行文件在启动时立即出现段错误,在到达main之前,AFAICT。事实上在加载共享库之前。一些输出:$./myprogSegmentationfault(coredumped)$gdb./myprogcoreGNUgdb(Ubuntu7.7-0ubuntu3)7.7Copyright(C)2014FreeSoftwareFoundation,Inc.LicenseGPLv3+:GNUGPLversion3orlaterThisisfreesoftware:youarefreetochangeandredistributeit.

c++ - Matlab/C++ : segmentation fault on parallel computing with C++ Mex persistent objects (cannot convert handle)

本帖引用:[1]http://www.mathworks.com/matlabcentral/newsreader/view_thread/278243“使C++对象在mex调用之间持久化,并且健壮。”[2]MATLABparforandC++classmexwrappers(copyconstructorrequired?)“MATLABparfor和C++类mex包装器(需要复制构造函数?)”我成功地实现了一个Matlab/C++接口(interface),基于[1]上提出的方法。无论如何,我在尝试将系统与Matlab并行计算一起使用时遇到了麻烦。在MEX接口(interface)

c++ - Ld 神奇地覆盖静态链接的符号

这几天我们一直在处理非常奇怪的问题。我什至无法理解它是如何发生的——当第三方(MATLAB)程序使用我们的共享库时,它会以某种方式用它自己的符号覆盖我们的一些符号(准确地说是增强)。这些符号是静态链接的并且(!!)是本地的。这是交易-我们使用boost1.47,MATLAB有boost1.40。目前,库在从我们的库调用它们的boost(正则表达式)时会出现段错误。所以,这是神奇的:我们没有依赖库,ldd:linux-vdso.so.1=>(0x00007fff4abff000)libpthread.so.0=>/lib/libpthread.so.0(0x00007f1a3fd6500

c++ - 在 Qt 应用程序中诊断段错误时遇到问题

我有一个使用QtWebKit的应用程序。它加载URL并在渲染树上导出一些统计信息。这部分代码引起了问题:...if(mPage!=0){disconnectSignals(mPage);deletemPage;}mPage=newPage();//subclassofQWebPageconnectSignals(mPage);QNetworkRequestreq;req.setUrl("http://...");mPage->mainFrame()->load(req,QNetworkAccessManager::GetOperation);上面的代码第一次运行mPage=0时,页面加

c++ - 编译 Qt-base : error: libQt5Core. so.5: 没有可用的版本信息

我是从源代码qt-base编译的。我构建了其中一个测试(tst_qdom),但在执行时出现错误。这是ldd的结果:lddtests/auto/xml/dom/qdom/tst_qdom**tests/auto/xml/dom/qdom/tst_qdom:/usr/lib/x86_64-linux-gnu/libQt5Core.so.5:noversioninformationavailable(requiredbytests/auto/xml/dom/qdom/tst_qdom)tests/auto/xml/dom/qdom/tst_qdom:/usr/lib/x86_64-linux

c++ - dlopen 可能出现段错误的潜在原因?

除了共享对象不存在之外,dlopen可能出现段错误的一些原因是什么?在我的例子中,我知道共享对象存在,但是当我的程序使用dlopen加载它时,它会出现段错误。我检查了我的lib文件夹,共享对象在那里,路径都是正确的。handle=dlopen(libraryName.c_str(),RTLD_LAZY|RTLD_GLOBAL);gdbBT:#00x00000000001b94f5in??()#10x00007fffefd96db6in__do_global_ctors_aux()from/usr/local/lib/MY_LIB2.so#20x00007fffefcf82c3in_in

c++ - 为什么我的应用程序在关闭时有时会因 SIGSEGV 而崩溃?

我用C++编写了一个应用程序,它使用Qt4.7.4。启动时,它会加载一些自己编写的动态库,这些库也使用Qt(如果这在某种程度上有用的话)。关闭应用程序时,有时它会因SIGSEGV和以下回溯而崩溃:#0malloc_consolidate(av=0x7ffff58b21c0)atmalloc.c:5155#10x00007ffff5591659inmalloc_consolidate(av=0x7ffff58b21c0)atmalloc.c:5115#2_int_free(av=0x7ffff58b21c0,p=)atmalloc.c:5034#30x00007ffff5594d7cin

c++ - 空闲时间后 libcurl 奇怪崩​​溃

我将libcurl用于FTP工作,它工作正常,但如果闲置一段时间,它就会崩溃。这是回溯,尽管阅读了一段时间,但我还是无法理解哪里出了问题。跟踪没有显示我的函数崩溃起源于何处,因此调试器在这里留下了孤儿。如果增加值(value),我会使用线程Linux上的编译器是GCC4.700x00007fff8e09b524addbyter/home/stefano/Desktop/myproject/curl-7.33.0/lib/mprintf.c91410x00007fff8e09a32fdprintf_formatf/home/stefano/Desktop/myproject/curl-7