草庐IT

fcatch-undefined-behavior

全部标签

c++ - 对符号 '_ZNSt8ios_base4InitD1Ev@@GLIBCXX_3.4' 的 undefined reference 在 Ubuntu 上构建 OpenCV

我在UbuntuTrusty上使用此命令构建以下代码。我是clang的新手,我可以使用帮助来调试这些错误。这些C绑定(bind)的cpp和hpp文件来自编译良好。我将这些文件中的header复制到我在此处列出的以下文件中,w.cppclang-std=c++11w.cpp-ow`pkg-config--cflags--libsopencv`错误如下:/usr/bin/ld:/tmp/w-2a90f4.o:undefinedreferencetosymbol'_ZNSt8ios_base4InitD1Ev@@GLIBCXX_3.4'//usr/lib/x86_64-linux-gnu/l

c++ - Qt/mingw32 undefined reference 错误...无法链接.lib

我是Qt的新手,有一个错误我无法修复。我有一堆windows(VS2005)的静态库文件(.lib)。我正在测试它们是否与Qt配合良好。所以我使用了我拥有的最简单的库。(称为MessageBuffer)。所以我将MessageBuffer.h添加到main.cpp中,并将这些文件的位置添加到的INCLUDEPATH中>.pro.到那时一切似乎都很好,我可以使用类和QtIDE显示所有方法和所有内容。所以对我来说,它看起来像是找到了.h文件。现在我在.pro中添加了MessageBuffer.lib(VS2005/Debug构建),如下所示:LIBS+=E:/SharedLibrary/l

c++ - cuda 共享库链接 : undefined reference to cudaRegisterLinkedBinary

目标:创建一个包含我的CUDA内核的共享库,该内核具有无CUDA包装器/header。为共享库创建一个test可执行文件。问题共享库MYLIB.so似乎可以正常编译。(没问题)。链接错误:./libMYLIB.so:对__cudaRegisterLinkedBinary_39_tmpxft_000018cf_00000000_6_MYLIB_cpp1_ii_74c599a1的undefinedreference简化的makefile:libMYlib.so:MYLIB.og++-shared-Wl,-soname,libMYLIB.so-olibMYLIB.soMYLIB.o-L/th

c++ - 单个语句中的多个复合赋值 : is it Undefined Behavior or not?

我找不到明确的答案:以下代码是否有未定义的行为?intx=2;x+=x+=x+=2.5; 最佳答案 行为未定义。让我们看一下稍微简单一点的表达式:x+=(x+=1)在C++11中,左边的x的值计算相对于表达式(x+=1)的值计算是无序的。这意味着x的值计算相对于x的赋值是无序的(由于x+=1),因此行为未定义.这样做的原因是+=运算符两侧的值计算相对于彼此是无序的(因为标准没有另外指定)。1.9p15指出:Ifasideeffectonascalarobjectisunsequencedrelativetoeitheranother

c - 仅使用 MinGW GCC 的 undefined reference

在Ubuntu12.04.3中编译代码一段时间后,我决定尝试在Windows中编写代码并安装了MinGW。安装后我设置了我的路径变量并且gcc似乎工作了。但是,某些代码(尤其是那些包含多个文件的代码)无法使用在Ubuntu上使用的相同命令进行编译,并且在MinGWshell中会显示各种错误消息。这是预期的行为还是我做错了什么?感谢您的帮助。P.S:显示错误信息QROMO.C:Infunction'floatqromo(float(*)(float),float,float,float(*)(float(*)(float),float,float,int))':QROMO.C:24:43

windows - 在 BGInfo "Variable is undefined: ' WScript 中使用 VBScript 时出错“”

我是一名业余VB脚本编写者。我正在制作一个脚本来检查两个文件之一是否存在,如果存在,则给出一个标记为“已安装”的标志。如果两个文件都不存在,则标记“未安装”。这是我的脚本...OptionExplicitDIMfsoSetfso=CreateObject("Scripting.FileSystemObject")CreateObject("WScript.Shell")If(fso.FileExists("C:\ProgramFiles(x86)\Dell\KACE\AMPAgent.exe"))OR(fso.FileExists("C:\ProgramFiles\Dell\KACE\

c++ - 嵌入 luajit undefined reference

我试图将luajit(静态)嵌入到C++应用程序中,但没有成功。我已按照luajit网站上的步骤进行操作,但无济于事,在该主题上进行了谷歌搜索,但没有获得任何相关信息,并尝试了我能想到的所有方法。看来我遇到的问题是g++没有正确链接它,或者luajit没有正确构建。这就是我要编译的内容:#include#include#includeintmain(void){lua_State*L=luaL_newstate();luaL_openlibs(L);lua_close(L);return0;}我得到的错误是一个undefinedreference错误,就好像我根本没有链接luajit一

c++ - 使用 MinGW/MSYS 和 CMake 对 `libintl_gettext' 的 undefined reference

我正在尝试将gettext添加到C++项目中。它在Linux下编译和运行良好,但我在Windows764位中遇到MinGW32的链接器错误。我正在使用cmake-G"MSYSMakefiles"..进行编译,因为MinGW不工作的原因很模糊。我也试过忍者。在CMakeLists.txt中,我有find_package(GettextREQUIREDinclude_directories(${GETTEXT_INCLUDE_DIR})if(INTL_FOUND)find_package(INTLREQUIRED)include_directories(${INTL_INCLUDE_DIR

c++ - glViewport undefined reference

这个问题在这里已经有了答案:Whatisanundefinedreference/unresolvedexternalsymbolerrorandhowdoIfixit?(38个答案)关闭8年前。总结编译器MinGW操作系统Windows7x64glViewport()函数给出了UndefinedReference错误我试过了添加-lGL结果找不到-lGL检查-Lpath-lglew32-lglfw3好像不是最后一个链接器参数我可能错误编译了GLEW和/或错误复制了GLEW库,因为我不确定我是否需要libglew32.a和/或libglew32.dll.a文件。我有这样的文件夹结构Op

windows - Behaviors SDK 在 Vs2017 中不可用

我在VS2015(Windows10)中使用BehaviorsSDK开发了一个UWP项目。然后我安装了VS2017并尝试在不进行任何更改的情况下运行该应用程序。不幸的是,我遇到了BehaviorsSDK的错误。是否有针对此问题的任何解决方案或变通方法?引用图片:错误输出:错误MSB3774:找不到SDK“BehaviorsXamlSDKManaged,Version=12.0” 最佳答案 你应该使用Microsoft.Xaml.Behaviors.Uwp.Managednuget包(或Microsoft.Xaml.Behaviors