小编Doc*_*awk的帖子

Ruby删除可枚举列表中的重复项

在ruby中有一个很好的方法来删除可枚举列表中的重复项(即拒绝等)

ruby enumerable

5
推荐指数
1
解决办法
2905
查看次数

Xcode"警告:无法找到目标文件...没有可用的调试信息......"

搞乱单元测试插件的各种设置给我留下了一个混乱的项目文件.我似乎修复了它,但是有一个副作用:每次我运行插件时,控制台都会为每个类文件填充警告,如下所示:

警告:找不到对象文件"/ Users/elisevanlooij/Documents/Project Plug-ins/MyPlugin 8/build/MyPlugin.build/Debug/MyPlugin.build/Objects-normal/i386/MyPlugin.o" - 没有可用的调试信息为"/ Users/elisevanlooij/Documents/Project Plug-ins/MyPlugin 8/MyPlugin.m".

现在我完全理解为什么错误发生,因为路径/ Users/elisevanlooij/Documents/Project插件/ MyPlugin 8不再存在:"MyPlugin 8"是一个临时文件夹(myvlugin的svn版本8的签出)因为去了垃圾桶,也被清空了.MyPlugin的当前版本甚至不应该知道它,但不知何故,由于某种原因,Xcode和/或gdb不会放弃.我甚至抛弃了Precompiled Headers Cach路径中的相关缓存,但没有任何乐趣.谷歌搜索已经向其他人透露了这个问题,但没有解决方案.谁可以帮忙?

这些是具有值的构建设置(Debug).顺便说一句,就我所见,它们就像没有这个问题的插件一样.

ARCHS = $(ARCHS_STANDARD_32_BIT)

SDKROOT = macosx10.5

ONLY_ACTIVE_ARCH = YES

VALID_ARCHS = i386 ppc ppc64 ppc7400 ppc970 x86_64

SYMROOT = build

OBJROOT = $(SYMROOT)

CONFIGURATION_BUILD_DIR = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)

CONFIGURATION_TEMP_DIR = $(PROJECT_TEMP_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)

SHARED_PRECOMPS_DIR = $(CACHE_ROOT)/SharedPrecompiledHeaders

BUILD_VARIANTS = normal

DEBUG_INFORMATION_FORMAT = dwarf

ENABLE_OPENMP_SUPPORT = NO

GENERATE_PROFILING_CODE = NO

PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = YES

SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = NO

ALTERNATE_GROUP = $(INSTALL_GROUP)

ALTERNATE_OWNER = $(INSTALL_OWNER)

ALTERNATE_MODE = $(INSTALL_MODE_FLAG)

DEPLOYMENT_LOCATION = NO …
Run Code Online (Sandbox Code Playgroud)

xcode gdb

5
推荐指数
1
解决办法
8433
查看次数

每次升级Xcode时,我都会在brew安装GCC时遇到链接器错误

因此,我升级到Mavericks以及最新版本的Xcode(5.02),并且 - 正如预期的那样,无法编译包含C扩展的任何新的Ruby宝石.这种情况特别发生在我自己的项目NMatrix中,其中包括C和C++代码.

我重新安装了Xcode的命令行工具.然后我升级了自制软件.然后我卸载了rbenv,ruby-build和我的自定义GCC版本(4.7除外,它是手动安装而不是通过brew安装).

接下来,我使用brew来安装gcc48(和gcc49一样好).我指示我的gem用GCC-4.8.2而不是GCC 4.9的dev快照构建.

好消息是我的宝石现在可以正常编译.坏消息是它不会链接.这是链接步骤:

$ bundle exec rake compile
cd tmp/x86_64-darwin13.0.0/nmatrix/2.0.0
make
linking shared-object nmatrix.bundle
ld: warning: directory not found for option '-L/usr/lib64/atlas'
0  0x10ef3f724  __assert_rtn + 144
1  0x10ef7425e  archive::File<x86_64>::makeObjectFileForMember(archive::File<x86_64>::Entry const*) const + 1118
2  0x10ef73c3b  archive::File<x86_64>::justInTimeforEachAtom(char const*, ld::File::AtomHandler&) const + 139
3  0x10ef883fe  ld::tool::InputFiles::searchLibraries(char const*, bool, bool, bool, ld::File::AtomHandler&) const + 210
4  0x10ef8f181  ld::tool::Resolver::resolveUndefines() + 189
5  0x10ef911a5  ld::tool::Resolver::resolve() + 79
6  0x10ef3fb17  main + 669
A linker snapshot was created at:
    /tmp/nmatrix.bundle-2013-10-15-085036.ld-snapshot
ld: …
Run Code Online (Sandbox Code Playgroud)

macos linker homebrew gcc llvm

5
推荐指数
1
解决办法
1459
查看次数

帮助理解Ruby中的yield和枚举器

如果有人能帮助我理解在枚举器中使用Yielder与在枚举器中调用yield之间的区别,我将不胜感激.

"有根据的Rubyist"表明,人们不会"从块中屈服",但并不能准确地解释发生了什么.

谢谢

ruby enumerable

4
推荐指数
2
解决办法
1819
查看次数

如何设置autotools在多个系统上同时为单独的体系结构构建项目?

我有一个使用automake和autoconf的C++项目.我是这两个人的新手.

我的主目录是网络安装的 - 我们拥有的每台服务器都是一样的 - 我想在不同的机器上同时编译和运行项目(及其可执行文件).

我们的服务器通常是不同的架构.我的桌面是32位,但服务器是64位等.

哪些选项我在使用configure.acMakefile.am编写命名为计算机体系结构不同的目录中的目标文件?在常规Makefile中执行此操作相对简单,但我不知道如何设置autotools.

c++ concurrency automake autoconf autotools

4
推荐指数
1
解决办法
900
查看次数

"无法在任何源中找到activesupport,"即使安装了activesupport.

当我尝试做rails serverthin start,两人都说:"在任何一个源找不到的ActiveSupport-3.0.6."

我安装了activesupport-3.0.7.我是否需要还原以使activesupport与我的Rails版本(3.0.6)匹配?

ruby-on-rails activesupport bundler

4
推荐指数
1
解决办法
8949
查看次数

包括Enumerable的要求

我一直在尝试设计我的只读数组数据结构,我真的很喜欢用Enumerable类提供遍历选项,但我找不到它的要求.在我看过的一些例子中,C实现寻找#each方法,但在我看来它还不够.

ruby enumerable

4
推荐指数
1
解决办法
419
查看次数

如何以模板类型名依赖的方式提高C++模板的精度?

我有一个模板化的数学函数,它接受两个值,对它们进行一些数学运算,并返回相同类型的值.

template <typename T>
T math_function(T a, T b) {
  LongT x = MATH_OP1(a,b);
  return MATH_OP2(x,a);
}
Run Code Online (Sandbox Code Playgroud)

我想将中间值(在x中)存储在一个类型中,该类型基本上是T的长版本(上面称为LongT).所以,如果T是浮点数,我希望x是双精度数; 如果T是一个int,我希望x是一个long int.

有没有办法实现这个目标?我试过了enable_if,但似乎我真的需要一个enable_if_else.

我更愿意让编译器自己弄清楚LongT的用途.当我调用函数时,我宁愿不必指定它.

c++ templates stl

4
推荐指数
2
解决办法
406
查看次数

在Visualization Toolkit中,哪些类型的对象需要调用Update()和Modified()以及何时调用?

我正在看一些可能无法正常工作的VTK代码.这是一个片段:

vtkSmartPointer<vtkCamera> cam = vtkSmartPointer<vtkCamera>::New();
cam->SetFocalPoint(0, 0, 0);
cam->SetViewUp(perp[0], perp[1], perp[2]);

cam->SetPosition(first_cam_pos);
cam->SetViewAngle(20);
cam->Modified();
Run Code Online (Sandbox Code Playgroud)

在我看来,呼叫Modified()是不必要的,调用四个Set功能应该自动发出相机已被修改的信号.

实际上,Kitware VTK相机示例不适Modified()用于相机.

vtkSmartPointer<vtkCamera> camera = vtkSmartPointer<vtkCamera>::New();
camera->SetPosition(0, 0, 20);
camera->SetFocalPoint(0, 0, 0);

// Create a renderer, render window, and interactor
vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New();

renderer->SetActiveCamera(camera);
Run Code Online (Sandbox Code Playgroud)

在其他情况下,我正在查看的可能无法工作的VTK代码Update()用于手动更新 - 不是用于相机对象,而是用于其他地方.我再次认为这可能不是必要的; 但显然Update()并且Modified()出于某种原因存在.

有一些规则来确定何时Modified()Update()需要被调用,当他们不这样做?是否有某些类型的对象需要它们而某些类型的对象不需要它们?或者它与调用它们的函数类型有关?

我正在使用VTK 6.1,但如果这里有一些历史背景,我很乐意得到一般答案.

vtk

4
推荐指数
1
解决办法
1615
查看次数

字节码编译给 Python 代码带来了多少加速?

我搜索了一段时间,发现了一些合理的说法,即 CPython 的编译允许更快地执行 Python 代码。不过,我想知道是否有人知道任何可以证明加速程度的基准测试。

或者,也许有一种简单的方法可以让我对其进行基准测试。是否有一个可以在运行时给出的Python标志来关闭编译?

python performance bytecode cpython

3
推荐指数
1
解决办法
1171
查看次数