- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
描述了我现在遇到问题的样本 here .这是我的代码端口( library we try to load in main code file 、 main application 、通用 all port idea is described here 和 some current linux progress here (most of the samples really work as needed!) )。当我在 linux 下编译这个示例时,它会编译,它会找到库但在执行过程中失败 segmentation fault error .当我在 Windows 上编译它时,同样的事情发生了。
我已经尽力不改original tutorial code尽可能多。
那么代码有什么问题,为什么会失败,唯一重要的是如何修复它?
那么如何使用 premake 构建这些东西:
**
' 的一部分进行处理在 Boost.Extension.Tutorial/libs/boost/extension/
文件夹中,所以当您下载 svn 时,它只是 header )**
' * 的一部分,为了简单起见,我们建议将其放入 Boost.Extension.Tutorial/libs/boost/reflection
* )Boost.Extension.Tutorial/libs/boost
文件夹中,premake4 可执行文件在 Boost 中。 Extension.Tutorial/
文件夹我们可以简单地调用 Boost.Extension.Tutorial/premake4-build-windows.bat
在 windows 上获取 sln for Visual Studio 或 Boost.Extension.Tutorial/premake-build.sh
获取 makefile。 更新:
项目文件 for Windows and Linux are now in svn所以你可以使用 premake 来创建项目 - 只需要 Boost、我们的 svn 和反射头文件库。
更新 2:所以通常我的电脑在 Windows 和 Linux 上都会出现问题。关于我的 Linux ( which is an openSUSE 11.3 VMWare image which includes Mono 2.10.2) GCC (gcc -v
) 的详细信息:
rupert@linux:~> gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i586-suse-linux/4.5/lto-wrapper
Target: i586-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.5 --enable-ssp --disable-libssp --disable-plugin --with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --disable-libgcj --disable-libmudflap --with-slibdir=/lib --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --program-suffix=-4.5 --enable-linux-futex --without-system-libunwind --enable-gold --with-plugin-ld=/usr/bin/gold --with-arch-32=i586 --with-tune=generic --build=i586-suse-linux
Thread model: posix
gcc version 4.5.0 20100604 [gcc-4_5-branch revision 160292] (SUSE Linux)
我的 Windows 是标准的 Windows 7,带有 Visual Studio Team System 2008 Team Suite。
我的 boost 是 1.46.1 download from here手动编译安装。
最佳答案
肯定是配置不一样,因为这是我测试的结果:
输出:
First reflection: It's an SUV. Second reflection: It's a compact.
也许是发布包?
First reflection: It's an SUV. Second reflection: It's a compact.
我已经在 32 位 Linux 上用
测试了这个SuSE 的 Mono-2.10.2.vmdk 镜像
所有测试的版本都给我正确和相同的输出。一定有什么 PEBCAK 正在发生吗? 也许在新的 VM 上重复我的上述步骤以亲 body 验?
我唯一真正看到的错误是
关于c++ - Boost-Extension-Reflection 非bjam编译官方样本时如何修复段错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5847769/
在
由于配额限制,我真的需要构建一个项目,我正在处理所有临时文件并在单独的目录中构建产品(在我的情况下 /tmp/somewhere )。 我习惯用 CMake 做这件事,用 bjam 可以吗? ,如果是
我试过阅读文档,但它相当难以理解,所以我希望有人可能有一个简单的答案。我想基于“调试”定义一个新的“变体”,它只是向编译器命令行添加一些宏定义,例如“-DSOMEMACRO”。我想我可以将其作为调试的
我有以下目录结构: APPDIR/ APPDIR/APPHDRS (有*.h) APPDIR/APPLIBSRCS (有 *.cpp 需要制作一个库,比如 libtest.a) APPDIR/APPM
有没有办法获取 Jamroot 文件的位置,以便在项目的另一个 Jamfile 中用作常量? 现在,我的 Jamroot 中有这个问题: constant HOME : [ os.environ HO
有没有办法获取 Jamroot 文件的位置,以便在项目的另一个 Jamfile 中用作常量? 现在,我的 Jamroot 中有这个问题: constant HOME : [ os.environ HO
我正在查看果酱文件,库的名称是如何构造的。 示例:libboost_log-mgw46-mt-1_48.dll 我想忽略最后一部分,如何使用我构造的名称将 -o 参数传递给链接器。 我的版本很少,并且
使用 Visual Studio,可以“忽略特定库”(项目属性 > 配置属性 > 链接器 > 输入 > 忽略特定图书馆)。 我们发现这在一个项目中很有用。现在我们要 build 该项目使用 boost
我在理解如何使用 bjam 指定和调用目标时遇到问题。我的意思是,我想为 bjam 提供要构建的命令行目标(实际上是从 Makefile),这些目标对应于构建过程的不同方面,而不是仅仅运行整个事情。
我有一个相当简单的 Boost.Python 扩展,我正在用 bjam 构建它。问题是事情发生的顺序对我来说没有意义,我不知道如何解决它。 我的项目包含一个带有 Jamroot 的根目录和一个带有 J
我有一个基于 iostreams 的项目并正在执行export CPATH=/apps/bzip2/include/在 bjam link=static 工作之前。有没有办法在 Jamroot 中设置
我正在使用 Boost 的 bjam,我正在尝试从同一个 Jamfile 构建同一个库的两个不同版本。需要使用定义的宏来构建库的一个版本以启用特殊功能。我希望在同一个最终位置实现两个不同的名称库。 举
我正在尝试以一种方式进行编译,使 exec 静态链接到 gcc。我假设运行 bjam link=static runtime-link=static 应该可以解决问题?当我尝试时,出现以下错误: ..
过去,b2/bjam 会构建这样命名的库: libboost_wserialization-gcc48-mt-d-1_60.so (note -gcc48-) 我刚刚从 git 中克隆了 boost,
我正在尝试使用 bjam 构建 boost.lib,但无论我做什么,我都无法让它识别我的 BOOST_LOG_NO_COMPILER_TLS 标志。我正在这样构建: bjam address-mode
我需要在托管 C++ 中编译一个库并查看 msvc.jam,我找不到任何可以将/clr 开关添加到我的编译标志的功能。 我该如何添加这样的功能?如果可能,我想避免修改 msvc.jam。 最佳答案 你
在 ubuntu 上使用 bjam,我正在构建一个 c++ 共享库并尝试在可执行文件中使用它。我必须构建为共享,因为它不会链接为静态(出现许多 undefined reference )。没关系。 两
我正在尝试使用与 1.42 版 Boost 捆绑在一起的最新版 bjam 来构建 1.35 版的 Boost。这会对构建结果产生不利影响吗?这甚至可能吗? 我尝试这样做的原因是因为最新版本的 BJam
我从源代码构建了 boost,因为我需要最新版本来构建 pyopencv。一切顺利。 但是,bjam 现在找不到 boost 库或 include,因为现在它们不再在/usr/lib 中,现在它们在/
我正在使用 Jamroot/boost-bjam 为 C++ 代码构建 python 绑定(bind): alias boost_dependencies : /boost/python//boo
我的机器上有两个 boost 目录。一个在/usr/中,一个在/home/user/boost 中。我怎样才能告诉 bjam 在/home/user/boost 中只使用我的本地版本。我已经将 BOO
我是一名优秀的程序员,十分优秀!