编译luabind-0.9.1 出现 error C2665: 'boost::operator ==' : none of the 4 overloads could convert all the argument types 的解决方案

最终出错的位置是:

#define LUABIND_OPERATOR_ADL_WKND(op) \
  inline bool operator op( \
      basic_iterator<basic_access> const& x \
    , basic_iterator<basic_access> const& y) \
  { \
      return boost::operator op(x, y); \
  } \
 \
  inline bool operator op( \
      basic_iterator<raw_access> const& x \
    , basic_iterator<raw_access> const& y) \
  { \
      return boost::operator op(x, y); \
  }
//错误指向以下两行
  LUABIND_OPERATOR_ADL_WKND(==)
  LUABIND_OPERATOR_ADL_WKND(!=)

我使用 luabind-0.9.0 、boost_1_58、vc120 也会出现上述情况;
变换到 boost_1_54、vc110 后就终于编译成功了

编译luabind-0.9.1 出现 error C2665: 'boost::operator ==' : none of the 4 overloads could convert all the argument types 的解决方案

时间: 2024-10-29 19:08:09

编译luabind-0.9.1 出现 error C2665: 'boost::operator ==' : none of the 4 overloads could convert all the argument types 的解决方案的相关文章

VS2008下编译luabind 0.8.1

[转] 学了一段时间Lua,显然直接在项目中使用是很不方便,google了一下,似乎大家都对luabind这个lua包装类青睐有加,于是我也随大势想用用看.     先做好准备工作,下载了luabin 0.8.1源码,Boost 1.3.8源码和lua 5.1.4源码,编译环境是VS2008 SP1.之前在网上看到一些文章说这些开源软件之间的版本依赖比较敏感,可能会有这样那样的问题,动手之前有些惶恐.     幸运的是,编译过程很顺利,如下:     1.编译lua 5.1.4     进入VS

error C2665: “outtextxy”: 2 个重载中没有一个可以转换所有参数类型

错误描述 一些程序在 VC6 下运行好好地,但是放到 VC2008 及更高版本 VC 下编译却报错误(以下仅以 VC2008 举例,高版本 VC 类似),例如使用如下语句: outtextxy(10, 20, "Hello World"); 在 VC6 下可以成功编译,但在 VC2008 下编译后会有错误. 中文版错误提示如下: error C2665: “outtextxy”: 2 个重载中没有一个可以转换所有参数类型 英文版错误提示如下: error C2665: 'outtext

AfxMessageBox出现错误error C2665

AfxMessageBox(("click")); 错误 error C2665: 'AfxMessageBox' : none of the 2 overloads could convert all the argument types 解决方法: AfxMessageBox(_T("click")); 解释:如果程序中define _UNICODE,则可用_T or _TEXT将后面的内容转为UNICODE格式字符串,否则和不用_T一样 或者就修改项目属性里面

[转载]luabind 0.9.1在boost 1.49+和gcc-4.6.3以上版本的编译问题处理

将boost更新到1.53时, 发现luabind死活编译不过, 报错如下 error: missing binary operator before token “(“ 根据老外的描述, boost中的BOOST_PP_ITERATION_FLAGS从1.49版本后发生了一些变化. 在git找到一个patch, 链接 https://gist.github.com/ObKo/2011636 以下简单描述 修改call_function.hpp, call_member.hpp及wrapper_

《linux 内核完全剖析》编译linux 0.12 内核 Ubuntu 64bits 环境

我×...终于好了,大概3 4个小时吧...各种毛刺问题.终究还是闯过来了.... [email protected]:~/Downloads/linux-0.00-050613/linux-0.00$ make ld -s -x -M head.o  -o system > System.map dd bs=32 if=boot of=Image skip=1 16+0 records in 16+0 records out 512 bytes (512 B) copied, 0.000605

apache源码编译时报错ssl_engine_init.c:546: error: &#39;STACK&#39; undeclared (first use in this function)

操作系统:centos6.4 X86_64 apache版本:httpd-2.2.6 openssl版本:openssl-1.0.1e 源码编译apache时报如下错误: ssl_engine_init.c: In function 'ssl_init_ctx_protocol': ssl_engine_init.c:390: warning: assignment discards qualifiers from pointer target type ssl_engine_init.c:39

在Windows Qt-4.8.x平台上编译Qt-5.0+ WebKit(即qtwebkit-2.3.x) Debug版注意事项

在Windows Qt-4.8.x平台上编译Qt-5.0+ WebKit(即qtwebkit-2.3.x) Debug版注意事项 跳转至: 导航. 搜索 目录 1 C++编译问题 1.1 从idl生成.h/.cpp失败? 1.2 VS编译器版本 1.3 名字导出问题 1.4 找不到int64_t类型? 1.5 Windows上需要pthread-win32库以提供多线程支持 2 链接问题 2.1 mt.exe : general error c101008d: Failed to write t

error C2665: “operator new” : 5个重载中没有一个可以转换参数1(从“const char [71]”类型)

error C2665: "operator new" : 5个重载中没有一个可以转换参数1(从"const char [71]"类型) 这个错误是怎么回事啊,搜索了整个项目好像没有可疑的new操作阿.这个错误是在将两个工程合并成一个过程中产生的.合并前没有这样的错误. MainFrm.cpp d:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\xmemory(34) : error C266

php5.6编译yaf3.0.6报错,版本问题

php5.6编译yaf3.0.6 phpize 没问题 ./configure --with-php-config=/usr/local/php5.6/bin/php-config 没问题 make 出现错误 [[email protected] yaf-yaf-3.0.6]# make /bin/sh /usr/local/src/yaf-yaf-3.0.6/libtool --mode=compile cc -I. -I/usr/local/src/yaf-yaf-3.0.6 -DPHP_A