我正在使用QT Creator在Ubuntu上制作一个C++程序。我编写的程序编译得很好,直到我决定开始使用C++11而不是C++98(这是QT Creator中的默认值)。我使用的是自己的cmake文件,而不是qmake,为此,我在cmakelists.txt文件
中包含了以下一行:
set(CMAKE_CXX_FLAGS "-std=c++0x")
#if (linux && (i386 || __x86_64__))
# include "Linux-x86/OniPlatformLinux-x86.h"
#elif (linux && __arm__)
# include "Linux-Arm/OniPlatformLinux-Arm.h"
#else
# error Unsupported Platform!
#endif
在转移到C++11之后,我在error Unsupported platform!
行得到一个错误。这是因为,据我所见,变量linux
在任何地方都没有定义,尽管定义了变量__x86_64__
。
因此,我有两个问题:
1)为什么变量linux
没有定义,尽管我使用的是Linux?
多谢了。
未保留标识符linux
。符合要求的编译器不能将其预定义为宏。例如,这个程序:
int main() {
int linux = 0;
return linux;
}
是完全有效的,符合要求的编译器必须接受它。预定义linux
会导致声明出现语法错误。
一些较旧的编译器(包括您使用的编译器以及您提供的选项)预定义了某些符号来提供关于目标平台的信息--包括Linux
来指示Linux系统。这个约定可以追溯到早期的C编译器,它是在保留和非保留标识符之间存在区别之前编写的。
确认编译器预定义了__linux__
,然后更改代码,以便测试__linux__
而不是linux
。您还应该找出使用了什么保留符号来代替i386
(可能是__i386__
)。
相关:为什么C预处理器将单词“Linux”解释为常数“1”?
我已经将我的项目从Angular 4升级到Angular 7,并且我得到以下错误: node_modules/@ng-bootstrap/ng-bootstrap/typeahead/typeahead.d.ts(3,10)中的错误:错误TS2305:模块“d://usman/dev_area/code/physician-portal/node_modules/rxjs/observable”没
自从我在收购Android Studio后创建了Gradle(大约一个月前)以来,我目前的项目一直在与Gradle一起构建。[我安装了一些Android Studio的早期更新,但没有问题。] 但是,今天,在我将Android Studio的最新更新升级为“7月11日”版本,从版本0.1.9升级到0.2.0之后,我的项目开始抱怨Gradle现在需要至少0.5.0。 所以,我不清楚的是:我一直假设G
我试图升级我目前的java项目,运行在1.6到1.8,但程序编译良好如何曾经当我去http://localhost:8080/MyProject/login.jsp-我得到错误。 我正在使用eclipse luna,我将java\u HOME更改为1.8,将eclipse项目facets更改为1.8,并更新了javax。servlet api=3.1.0。 堆栈跟踪 无布局。jsp 我用常春藤做依
所以我刚刚在一个小项目中升级了SpringBoot版本,现在身份验证搞砸了。当我尝试获取身份验证令牌时,我得到一个错误: 我和邮递员玩得很开心。如果我将grant_type/pw/username从正文移到QueryParams,它就可以正常工作了。但我们不能改变这一点。那么,有没有办法找出是哪个依赖项更改导致了这种情况?我查看了升级文档(2.1-
我已经从Rails 3.2.13升级到Rails 4.0.0。我修复了所有弃用警告(除了secret_base_key),升级了database_cleaner,rspec,rspec-rails,水豚,selenium-webcher和poltergeist到最新版本。 现在,当我通过rake或rspec运行我的规范时,rspec的输出最终会挂起,总是挂在特性测试(javascript测试)上。
我试图使用C++11的std::condition_variable,但是当我试图从第二个线程锁定与其关联的unique_lock时,我得到一个异常“资源死锁已避免”。创建它的线程可以锁定和解锁它,但不能锁定第二个线程,即使我非常肯定unique_lock不应该在第二个线程试图锁定它的地方已经锁定。 FWIW我在Linux中使用gcc4.8.1和-std=gnu++11。 我已经围绕conditi