错误:在令牌之前缺少二元运算符“(” [英] error: missing binary operator before token "("

查看:183
本文介绍了错误:在令牌之前缺少二元运算符“(”的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 在gcc升级后,我的项目无法生成,因为该错误包含在/ usr / include / luabind /usr/include/luabind/back_reference.hpp:27中的
,/usr/include/luabind/class.hpp:93中的
,来自

/usr/include/luabind/luabind.hpp:28,
来自/home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,来自/ home / ockonal / Workspace的
/themisto/engine/source/Core/Root.cpp:28:
/usr/include/luabind/detail/call_member.hpp:319:1:错误:在令牌之前缺少二元运算符(
在/usr/include/luabind/back_reference.hpp:27:0包含的文件中,从/usr/include/luabind/class.hpp:93获得
,从/ usr / include / luabind / luabind获得
.hpp:28,
from /home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,
from / home / ock onal / Workspace / themisto / engine / source / Core / Root.cpp:28:
/usr/include/luabind/wrapper_base.hpp:92:1:错误:在令牌之前缺少二元运算符(
在/usr/include/luabind/function.hpp:10:0包含的文件中,从/usr/include/luabind/class.hpp:94获得
,从/ usr / include / luabind /从/ home / ockonal / Workspace / themisto / engine / source / bin目录下的/home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,

,核心/ Root.cpp:28:
/usr/include/luabind/detail/call_function.hpp:326:1:错误:在令牌之前缺少二元运算符(
在/ usr / /usr/include/luabind/class.hpp:96中包含/usr/include/luabind/luabind.hpp:28中的
,包括/usr/include/luabind/class.hpp:96,/usr/include/luabind/luabind.hpp:28中的include / luabind / detail / constructor.hpp:12:0, / home / ockona
/ home /ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,
l / Workspace / themisto / engine / source / Core / Root.cpp:28:
/usr/include/luabind/wrapper_base.hpp:92:1:error:missing binary operator before token(
在/usr/include/luabind/class.hpp:107:0包含的文件中,/usr/include/luabind/luabind.hpp:28中的
,/ home / ockonal / Workspace中的
/ themisto / engine / include / Scripting / ScriptManager.hpp:21,
from /home/ockonal/Workspace/themisto/engine/source/Core/Root.cpp:28:
/ usr / include / luabind /detail/call_member.hpp:319:1:error:missing token operator before token(

会是什么呢?我也尝试了最新的gcc(4.8)快照,但它没有帮助。



ps

  extra / boost 1.49.0-1 [已安装] 
core / gcc 4.6.3-1(base-devel)[已安装]
aurbuild / luabind 0.9.1- 1 [installed]


解决方案

google项目我能够浏览代码并找到哪些行导致错误。它们全都如下所示:

  #elif BOOST_PP_ITERATION_FLAGS()== 1 

看来其他人已经遇到了这个问题,我发现这个线程,我希望能帮助你。


after gcc upgrade my project fails to build due to the error:

In file included from /usr/include/luabind/wrapper_base.hpp:31:0,
                 from /usr/include/luabind/back_reference.hpp:27,
                 from /usr/include/luabind/class.hpp:93,
                 from /usr/include/luabind/luabind.hpp:28,
                 from /home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,
                 from /home/ockonal/Workspace/themisto/engine/source/Core/Root.cpp:28:
/usr/include/luabind/detail/call_member.hpp:319:1: error: missing binary operator before token "("
In file included from /usr/include/luabind/back_reference.hpp:27:0,
                 from /usr/include/luabind/class.hpp:93,
                 from /usr/include/luabind/luabind.hpp:28,
                 from /home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,
                 from /home/ockonal/Workspace/themisto/engine/source/Core/Root.cpp:28:
/usr/include/luabind/wrapper_base.hpp:92:1: error: missing binary operator before token "("
In file included from /usr/include/luabind/function.hpp:10:0,
                 from /usr/include/luabind/class.hpp:94,
                 from /usr/include/luabind/luabind.hpp:28,
                 from /home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,
                 from /home/ockonal/Workspace/themisto/engine/source/Core/Root.cpp:28:
/usr/include/luabind/detail/call_function.hpp:326:1: error: missing binary operator before token "("
In file included from /usr/include/luabind/detail/constructor.hpp:12:0,
                 from /usr/include/luabind/class.hpp:96,
                 from /usr/include/luabind/luabind.hpp:28,
                 from /home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,
                 from /home/ockonal/Workspace/themisto/engine/source/Core/Root.cpp:28:
/usr/include/luabind/wrapper_base.hpp:92:1: error: missing binary operator before token "("
In file included from /usr/include/luabind/class.hpp:107:0,
                 from /usr/include/luabind/luabind.hpp:28,
                 from /home/ockonal/Workspace/themisto/engine/include/Scripting/ScriptManager.hpp:21,
                 from /home/ockonal/Workspace/themisto/engine/source/Core/Root.cpp:28:
/usr/include/luabind/detail/call_member.hpp:319:1: error: missing binary operator before token "("

What could it be? I've also tried latest gcc (4.8) snapshot but it didn't help.

p.s.

extra/boost 1.49.0-1 [installed]
core/gcc 4.6.3-1 (base-devel) [installed]
aurbuild/luabind 0.9.1-1 [installed]

解决方案

As luabind is present as a google google project I was able to browse the code and find which lines are causing the error. They all look like:

#elif BOOST_PP_ITERATION_FLAGS() == 1

It seems others have run into this problem and I found this thread that I hope will help you.

这篇关于错误:在令牌之前缺少二元运算符“(”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆