草庐IT

linker-flags

全部标签

c++ - g++ : fatal error: -fuse-linker-plugin, 但找不到 liblto_plugin-0.dll

我是mingw的初学者。请专家回答我的问题。我做了以下过程:我已经为C++编译器安装了mingw-get-setup.exe我还为C++IDE使用了Eclipse-cpp-europa-winter-win32我还使用了以下uer环境变量:""\bin;""\MSYS\1.0\local\bin;""\MSYS\1.0\bin但是当我运行我的程序时出现“没有二进制文件启动失败”错误。我在运行前已经构建了程序。我还在控制台中收到以下错误:构建项目测试的配置调试**InternalBuilder用于构建****g++-otest.exe测试.og++:fatalerror:-fuse-li

Apple Mach-O Linker错误链接器命令失败,出口代码1

当添加可访问性文件。AppleMach-OLinker错误链接器命令失败,出口代码1。看答案您可以尝试将编译器标志“-fno-objc-arc”添加到“构建阶段”...中的“编译源”下的“ressionability.m”...但是,由于没有足够的信息,这只是一个受过教育的猜测...

c++ - 关于gcc O3 optimization flag的疑惑

我有g++4.7.3编译器。我正在尝试遵循优化标志描述http://gcc.gnu.org/onlinedocs/gcc-4.7.3/gcc/Optimize-Options.html下一个问题:我有一个程序,它使用-O2和-O3标志给出不同的时间。-O2比-O3快两倍。O2时间为8毫秒,O3时间为16毫秒。所以我想了解到底是什么造成了差异。在上面的链接中,我看到:“O3优化更多。-O3开启所有由-O2指定的优化,同时开启-finline-functions、-funswitch-loops、-fpredictive-commoning、-fgcse-after-reload、-ftr

c++ - C/C++ : -msse and -msse2 Flags do not have any effect on the binaries?

我只是在玩弄gcc(g++)和编译器标志-msse和-msse2。我有一个看起来像这样的小测试程序:#includeintmain(intargc,char**argv){floata=12558.5688;floatb=6.5585;floatresult=0.0;result=a*b;std::cout当我用下面的语句编译它时:/usr/local/bin/g++-4.9-W-mssemain.cpp-otestsse和/usr/local/bin/g++-4.9-W-msse2main.cpp-otestsse2输出文件是二进制相等的。但由于SMID标志,我预计它们并不相同。所以

c++ - Gcc 隐藏来自包含的静态库的符号的可见性

我有:一个共享库,比如libShared.so,它包含一个类Bar,带有一个方法intBar::do(intd)const一个静态库,比如libStatic.a,它包含一个类Foo,带有一个方法intFoo::act(inta)const。Bar的代码是这样的://Bar.hclass__attribute__((visibility("default")))Bar{private:__attribute__((visibility("hidden")))intprivateMethod(intx)const;public:Bar(){}intdo(intd)const;}//Bar.

c++ - 使用 atomic_flag 自旋锁进行内存排序

我正在尝试熟悉c++11的新内存排序概念,并且相信我实际上已经很好地掌握了它们,直到我偶然发现了自旋锁的这个实现:#includenamespaceJayZ{namespaceTools{classSpinLock{private:std::atomic_flagspin_lock;public:inlineSpinLock(void):atomic_flag(ATOMIC_FLAG_INIT){}inlinevoidlock(void){while(spin_lock.test_and_set(std::memory_order_acquire));}inlinevoidunlock

c++ - OpenCV 2.4.2 错误 "OpenCV Error: Bad flag"

我刚开始尝试使用OpenCV,并且根据一本书编写了一个非常简单的小程序。问题是当我尝试编译它时,出现此错误。我会告诉你我所有的信息。我使用Homebrew软件为MacOSX10.7安装了openCV。#include#includeintmain(intargc,char*argv[]){cv::Matimage=cv::imread("usf.gif");cv::namedWindow("MyImage");cv::imshow("MyImage",image);cv::waitKey(5000);return1;}我喜欢这样编译:g++-otestopencvtest.cc-lop

Apple Mach -o Linker(ID)错误?

我正在尝试构建由Unity构建的这个Xcode工作区。在构建项目的最后(链接)结束时,修改项目后,我会出现AppleMach-OLinker(ID)错误。我无法打开错误选项卡,以查看到底是什么导致错误。它所说的只是“链接器命令失败了出口代码1(使用-v查看调用)。还有两个AppleMach-OLinker(ID)错误,但我不知道如何解决它们。任何帮助是极大的赞赏!我无法扩展这些标签。这是扩展的警告选项卡,两个AppleMach-OLinker(ID)警告是相同的看答案这个问题有不同的解决方案,其中之一就是设置启用比特代码至不。(我不知道为什么默认这是是的)这个问题是像鬼这样的问题。清除缓存,重

Python 扩展 : using different compiler flags for a C parts and C++ parts

对于我的python扩展,我有C(来自嵌入式库)和C++文件,它们被编译并链接在一起。只有C++部分与Python接口(interface)(通过SWIG)。这在VS2015的windows和linux下的gcc中都有效。但是,对于gcc,C++文件需要一组不同于C文件的编译器标志(例如-std=c++11、-Wno-reorder),以避免出现有关C中不正确标志的警告。在setuptools/distutils中有没有办法单独更改每个文件的编译器标志,例如。基于文件扩展名?我已经使用了来自https://stackoverflow.com/a/36293331/3032680的自定义

c++ - g++ : Is there a way to access compile flags inside the code that is being compiled?

有没有一种方法(例如,定义的常量)来访问正在编译的代码中运行编译器的编译标志。例如,我想要一个程序来写入编译时使用的标志。intmain(){std::coutgcc/g++是否存在这样的常量?或者更好:是否有在gcc和clang中都定义的常量?我对检查优化级别和-march标志的值特别感兴趣。那么,如果没有显示所有标志的常量,是否至少有显示这些值的常量? 最佳答案 以下命令打印出所有预定义的宏:g++-dM-E-这适用于gcc和g++。您可以自行检查-不幸的是,没有宏可让您轻松访问完整的gcc/g++命令行。幸运的是,大多数-m.