草庐IT

linker-flags

全部标签

c++ - 使用 FILE_FLAG_DELETE_ON_CLOSE 标志创建文件

在描述我的问题之前,这里是我正在编写的程序(IHExplorer.exe)的描述:这是一个C++应用程序。IHExplorer应用程序看起来尽可能像Windows资源管理器窗口。但有一个异常(exception),那就是从这个资源管理器窗口中启动文件会首先将它们解密到用户的临时文件夹,然后启动与文件扩展名关联的应用程序并在关闭时删除文件。我遇到的问题是文件关闭时自动删除。这是一个场景:用户在IHExplorer中双击加密的.txt文件。IHExplorer解密内存中的.txt文件,然后使用::CreateFile将其写入%TEMP%,它返回文件的句柄(IHExplorer必须至少保持此

c++ - Visual Studio 9 : Display Linker Search Paths

我如何说服MSVC9链接器向我显示它正在搜索包含库(lib)的路径?我正在尝试解决出现以下链接器错误的问题:LINK:fatalerrorLNK1104:cannotopenfile'MyGizmo.lib'在Linker>General下,我将AdditionalLibraryDirectories设置为:..\..\..\x64\Release我认为这是我要查找的lib文件所在的位置。当我将此路径更改为lib文件所在的完全限定目录时,链接器通过并找到lib文件。因此,我得出结论,我在上面输入相对路径的方式是不正确的。如果路径是相对于源代码所在位置的路径,则此相对路径应该是正确的。那

c++ - 获取 [ fatal error C1007 : unrecognized flag '-archVFPv3-D32' in 'p2' ] error while compiling win8 app

有时我会收到此错误:fatalerrorC1007:“p2”中无法识别的标志“-archVFPv3-D32”VisualStudio2013,Windows应用商店应用(c++和c#项目)。似乎完全重建解决了这个问题-直到下一次。有什么想法吗?谢谢 最佳答案 当您更改了编译器并且您链接到的静态库是使用不同的编译器编译时,也会发生这种情况。例如。不同版本的MSVC编译器。 关于c++-获取[fatalerrorC1007:unrecognizedflag'-archVFPv3-D32'in

c++ - 如何在 CMake 的 CXX_FLAGS 中包含 `pkg-config --cflags --libs gtk+-2.0`

这是Makefile中的CFLAGS。CFLAGS=-I/usr/include/libglade-2.0-I/usr/include/gsl`pkg-config--cflags--libsgtk+-2.0`-lglade-2.0-lglut-I/usr/local/include/dc1394-ldc1394我想使用CMAKE而不是Makefile。这部分是我写的CMakeLists.txt文件。find_package(PkgConfigREQUIRED)pkg_check_modules(GTKREQUIRED"gtk+-2.0")#Addthepathtoitsheaderf

c++ - 在没有类声明的情况下使用 Qt 的 Q_DECLARE_FLAGS 和 Q_DECLARE_OPERATORS_FOR_FLAGS

我有以下枚举声明,我想利用Qt中的QFlags支持来实现额外的类型安全:namespacessp{enumVisualAttribute{AttrBrushColor=0x001,AttrBrushTexture=0x002,AttrPenCapStyle=0x004,AttrPenColor=0x008,AttrPenJoinStyle=0x010,AttrPenPattern=0x020,AttrPenScalable=0x040,AttrPenWidth=0x080,AttrSymbolColor=0x100,AttrTextColor=0x200,AttrTextFontFam

c++ - 模板函数特化 : linker error

当模板参数类型相同时,我正在尝试专门化两个模板参数的函数。我通过以下方式进行:#include#includeusingnamespacestd;templateintfun(U&u,Tt);templateinlineintfun(int&u,floatt){coutinlineintfun(U&u,typenamestd::enable_if::value,T>::typet){cout此代码编译良好(GCC4.8.2),但当U和T相同时,链接器会为所有fun调用提供undefinedreference类型。为什么它不起作用?链接器输出:g++-std=c++11test.cpp/

c++ - Xcode4 : "bad codegen, pointer diff" linker error again

这个问题与此相关:"badcodegen,pointerdiff"linkererrorwithXcode4和"badcodegen,pointerdiffinboost"errorin32-bitbuild和XCode3.2.6and4linkererrorsld:badcodegen,pointerdiffin...toglobalweaksymbol我目前正在将我的所有项目升级到Xcode4,但我遇到了一些奇怪的事情。-仅当我构建通用二进制文件或32位版本时才会出现上述错误。如果我只坚持64位,一切正常。我正在自己构建一个自定义静态库,现在我不在该代码中使用任何可见性设置(即at

c++ - 对于 Cmake,您可以使用 `add_compiler_flags()` 命令修改发布/调试编译器标志吗?

在add_compile_options()的手册页中,我没有看到任何关于如何修改发布/调试编译器标志的提及。您可以使用add_compiler_options()修改发布/调试编译器标志吗?如果是,如何?如果不是,推荐的规范方法是修改therelease/debugcmakevariables[1]asdescribedhere吗?[1]即设置cmake变量CMAKE__FLAGS_(对于langc/c++它将是:CMAKE_CXX_FLAGS_RELEASE、CMAKE_CXX_FLAGS_DEBUG、CMAKE_C_FLAGS_RELEASE、CMAKE_C_FLAGS_DEBU

c++ - Visual Studio : How to specify different runtime libraries for the linker?(/MTd、MDd 等)

我正在链接到VS2008中的几个库。如果我对链接器的了解是正确的,MTd用于静态链接而MDd用于动态链接(到DLL)。我的目标是静态链接一些库和动态链接其他库。项目选项似乎只有一个设置适用于链接器输入中的所有库。我该怎么做? 最佳答案 在您设置项目后,您的项目将获得一个合理的C运行时库默认值,具体取决于您如何回答新建项目向导的提示。您可以按如下方式检查和更改(如果需要):在解决方案资源管理器中右键单击相关项目,选择属性查看配置属性、C/C++、代码生成、运行时库。您可以根据需要链接其他库,您只需在“链接器”、“输入”、“附加依赖项”

c++ - 许多 : 'Apple Mach-O Linker Errors'

我在Xcode中制作了一个使用DropBoxAPI的iPhone应用程序。我遇到了23个错误,它们都被命名为AppleMach-OLinkerErrors。我已将我的二进制文件与dropbox库以及:SystemConfiguration、QuartzCore、Security、CFNetwork、CoreGraphics、UIKit和Foundation链接起来。我并没有使用所有这些框架,但DropBox告诉我必须导入其中的一些,而我正在使用其余的。我该怎么办?这是错误之一:Ld/Users/Zach/Library/Developer/Xcode/DerivedData/SnapD