草庐IT

osx-elcapitan

全部标签

c++ - OSX 窗口捕获

我一直在研究OSX中的窗口系统。我正在尝试了解有关它的所有信息,以获取我正在处理的一些捕获代码。我想做什么我希望能够过滤我的窗口查询,以便我仅抓取在任何空间中可见或在任何空间中最小化的窗口。到目前为止的工作现在,使用SonOfGrab测试代码和文档,我创建了一个可以查询窗口服务器并给我如下列表的程序:{"name":"Xcode","id":25314,"width":16,"height":194,"visible":"NO","desktop":-1,"ownerpid":37319,"layer":0}我过滤掉所有桌面元素,只抓取可共享的窗口。我学到了什么据我从文档中可以看出,这

c++ - 我可以在 OSX 中使用 EGL 吗?

我正在尝试使用CairoC++应用程序中的库利用其在Mac中的GL加速。(我对其Quartz后端进行了相同的测试,但性能令人失望。)它说它支持EGL和GLX。使用GLX需要(外部安装)XQuartz并打开一个XWindow,所以我倾向于使用EGL:Apple的programmingguidepages告诉我们使用NSOpenGL*,即this页面和其他人说它使用CGL。This(2012)页面说Mac有EAGL,它只类似于EGL(我想它指的是IOS,而不是MAC,因为它的EAGL引用链接指向IOS帮助页面)。Angle说它支持EGL,但据我所知,它适用于Windows中的Direct3

c++ - 在 mac osx(不是 dylib)上构建真正的 .so/MH_BUNDLE 共享库的 g++ 标志是什么?

我正在尝试在macosx上创建一个.so。似乎有一个distinction在.so和.dylib类型之间。$filesome_real.sosome_real.so:Mach-O64-bitbundlex86_64dynamiclib标志按预期生成dylib$g++-dynamiclib-olibgtest-1.7.0.dylib[my.ofiles]$filelibgtest-1.7.0.dyliblibgtest-1.7.0.dylib:Mach-O64-bitdynamicallylinkedsharedlibraryx86_64####^^^asexpected共享标志没有给出

c++ - OSX 10.8 上 -stdlib=libc++ 的无效部署目标

我正在通过node-gyp编译一个用C++编写的Node.JS包。当我编译它时,我收到以下错误:clang:error:invaliddeploymenttargetfor-stdlib=libc++(requiresOSX10.7orlater)。我在OSX10.8上运行,并且安装了XCode命令行工具。这是node-gyp用来编译包的文件:{"targets":[{"target_name":"package_name",'type':'executable','xcode_settings':{'OTHER_CFLAGS':["-std=c++11","-stdlib=libc+

c++ - 如何使用 macports 安装 clang 3.1? (OSX,雪豹)

我想使用macports安装最新的clang(3.1)编译器(我使用emacs而不是xcode,而且xcode附带的clang版本无论如何都较旧)。macports似乎有最新版本的gcc,但是当我输入“portlistclang”时,显示的唯一版本是2.9。我使用C++11功能,所以我想使用最新版本。我在MBP上运行雪豹。 最佳答案 Clang在MacPorts上有几个不同的版本:$portsearchclangclang@2.9(lang)C,C++,ObjectiveCandObjectiveC++compilerclang-2

c++ - 如何使用 AudioQueue 在 C++ 中为 Mac OSX 播放声音

我正在尝试在OSX上从缓冲区播放声音(例如:等效于Windows“PlaySound”功能)。我整理了一些C++代码来使用AudioQueue播放音频(据我所知,这是在OSX上播放音频的最简单方法)。但是,不会产生声音,也不会调用音频回调函数。有没有人知道我做错了什么,或者有没有人有一个简单的C/C++示例来说明如何在OSX上播放声音?#include#include#defineBUFFER_COUNT3staticstructAQPlayerState{AudioStreamBasicDescriptiondesc;AudioQueueRefqueue;AudioQueueBuff

c++ - 如何在 mac osx 中隐藏终端窗口?

我有一个在Windows、Linux、Android和Mac上运行的多平台应用程序。它在所有平台上都是用g++编译的。对于Windows,我创建了一个安装程序并通过添加链接器标志摆脱了终端窗口:-Wl,--subsystem,windows我正在寻找Mac上的类似选项。从GUI打开可执行文件时,如何摆脱控制台窗口?这个问题类似于HowtohideconsolewindowinMacOS(gcccompiler)?,除了我的应用不是守护进程。谢谢。 最佳答案 根据您的描述,您正在构建一个unix风格的可执行文件。在OSX上,它们将始终

c++ - 在 Mac OSX 和 Linux 下使用 printf 语句进行类型转换

我有一些代码在MacOSX和Linux(Ubuntu、Fedora等)下表现不同。这是关于printf语句中算术运算中的类型转换。代码使用gcc/g++编译。以下内容#includeintmain(){floatdays=(float)(153*86400)/86400.0;printf("%f\n",days);floatfoo=days/30.6;printf("%d\n",(int)foo);printf("%d\n",(int)(days/30.6));return0;}在Linux上生成153.00000054在MacOSX上153.00000055为什么?令我惊讶的是,这适

c++ - 如何在 OSX 中安装 boost C++ 库

我下载了boostjam并将其放入安装文件中并尝试运行它,显示以下错误:error:error:noJamfileincurrentdirectoryfound,andnotargetreferencesspecified. 最佳答案 更现代的包管理器homebrew用一个做这个$brewinstallboost 关于c++-如何在OSX中安装boostC++库,我们在StackOverflow上找到一个类似的问题: https://stackoverflow

c++ - 如何从命令行在 OSX 上的 callgrind 输出中获取有意义的函数名称?

目标:我希望能够分析callgrind(以及后来的cachegrind)的输出,并希望在使用callgrind_annotateCLI时看到有意义的变量名。先前研究:我知道Valgrind(http://valgrind.org/docs/manual/manual-core.html)中的dsym标志,并且相信我了解调试符号在osx(LLDBnotshowingsourcecode)上的工作方式。我在这个网站上看到的少数提到这个问题要么没有得到答复,要么是未包含-g标志的情况。理论(可能是错误的...):基于valgrind输出中的“dym=”行,我想知道valgrind是否正在努力