草庐IT

MacPorts

全部标签

c++ - 处理 libc++ 和较旧的 libstdc++ 之间的 ABI 差异的好方法是什么?

在Mac上处理libc++和stdlibc++之间的ABI不一致的好方法是什么(如果有)?问题:许多c++11功能需要C++标准库的新libc++实现。但是libc++与旧的libstdc++不兼容ABI,而目前大多数软件通常链接到后者。例如,系统编译器仍然使用stdlibc++,这意味着我所有使用macports安装的库对于像字符串这样的标准类都有不同的ABI,并且无法与大量使用c++11的项目链接。我目前的解决方案:保留两个版本的库,这通常会导致问题(boost、opencv等)并链接到适当的版本。我想有人可能会建议,如果我真的想使用libc++,我应该使用stdlibc++清除我

c++ - 处理 libc++ 和较旧的 libstdc++ 之间的 ABI 差异的好方法是什么?

在Mac上处理libc++和stdlibc++之间的ABI不一致的好方法是什么(如果有)?问题:许多c++11功能需要C++标准库的新libc++实现。但是libc++与旧的libstdc++不兼容ABI,而目前大多数软件通常链接到后者。例如,系统编译器仍然使用stdlibc++,这意味着我所有使用macports安装的库对于像字符串这样的标准类都有不同的ABI,并且无法与大量使用c++11的项目链接。我目前的解决方案:保留两个版本的库,这通常会导致问题(boost、opencv等)并链接到适当的版本。我想有人可能会建议,如果我真的想使用libc++,我应该使用stdlibc++清除我

python - Macports 端口选择命令

什么是新的命令&或等效的:python_select-L(showsavailablepythonversions)python_select-s(setsthedefaultversionofyourchoiceofpython).我知道他们已更改为--list、--set、--show但似乎没有如何正确使用每一个的例子。例如,如果我使用portselect--set我会得到以下信息:Error:portselect[--list|--set|--show][]. 最佳答案 要列出:portselect--listpython显示

python - Macports 端口选择命令

什么是新的命令&或等效的:python_select-L(showsavailablepythonversions)python_select-s(setsthedefaultversionofyourchoiceofpython).我知道他们已更改为--list、--set、--show但似乎没有如何正确使用每一个的例子。例如,如果我使用portselect--set我会得到以下信息:Error:portselect[--list|--set|--show][]. 最佳答案 要列出:portselect--listpython显示

python - 如何: Macports select python

当我进入时:portselect--listpython这是结果:Availableversionsforpython:nonepython25(active)python25-applepython26-applepython27python27-apple我认为当我使用python时,我会使用版本2.5。相反,当我输入“python”时,2.7版似乎处于事件状态。如何将其更改为2.5版?Python2.7.1(r271:86832,Jun162011,16:59:05)[GCC4.2.1(BasedonAppleInc.build5658)(LLVMbuild2335.15.00)

python - 如何: Macports select python

当我进入时:portselect--listpython这是结果:Availableversionsforpython:nonepython25(active)python25-applepython26-applepython27python27-apple我认为当我使用python时,我会使用版本2.5。相反,当我输入“python”时,2.7版似乎处于事件状态。如何将其更改为2.5版?Python2.7.1(r271:86832,Jun162011,16:59:05)[GCC4.2.1(BasedonAppleInc.build5658)(LLVMbuild2335.15.00)

python - 如何在不使用 MacPorts 或 Fink 的情况下在 OS X Leopard 上安装 lxml?

过去我已经尝试过很多次,但也遇到过很多问题。有没有人有在没有MacPorts或Fink的情况下在OSX上安装lxml的方法?最好使用完整的1-2-3步骤来下载和构建每个依赖项。 最佳答案 感谢Twitter上的@jessenoller,我有一个适合我需要的答案-您可以使用静态依赖项编译lxml,从而避免弄乱OSX附带的libxml2。这对我有用:cd/tmpcurl-Ohttp://lxml.de/files/lxml-3.6.0.tgztar-xzvflxml-3.6.0.tgzcdlxml-3.6.0pythonsetup.py

python - 如何在不使用 MacPorts 或 Fink 的情况下在 OS X Leopard 上安装 lxml?

过去我已经尝试过很多次,但也遇到过很多问题。有没有人有在没有MacPorts或Fink的情况下在OSX上安装lxml的方法?最好使用完整的1-2-3步骤来下载和构建每个依赖项。 最佳答案 感谢Twitter上的@jessenoller,我有一个适合我需要的答案-您可以使用静态依赖项编译lxml,从而避免弄乱OSX附带的libxml2。这对我有用:cd/tmpcurl-Ohttp://lxml.de/files/lxml-3.6.0.tgztar-xzvflxml-3.6.0.tgzcdlxml-3.6.0pythonsetup.py

c++ - 为什么我使用 XCode 的 llvm 与来自 MacPorts 的 clang++ 获得更快的二进制文件?

我已经编写了一个基准测试方法来测试我的C++程序(搜索游戏树),并且我注意到使用XCode4.0.2中的“LLVM编译器2.0”选项进行编译可以使我的二进制文件速度明显快于我使用来自MacPorts的最新版本的clang++进行编译。如果我理解正确的话,我在这两种情况下都使用了clang前端和llvm后端。Apple是否改进了他们的clang/llvm发行版以生成更快的MacOS二进制文件?我找不到有关该项目的太多信息。以下是我的程序为各种编译器生成的基准,全部使用-O3优化(越高越好):(Xcode)"gcc4.2":38.7(Xcode)"llvmgcc4.2":51.2(Xcod

c++ - is_lock_free() 在升级到 MacPorts gcc 7.3 后返回 false

以前,在AppleLLVM9.1.0中,128位结构上的is_lock_free()已返回true。为了获得完整的std::optional支持,我随后升级到MacPortsgcc7.3。在我第一次尝试编译时,我遇到了这个臭名昭著的showstopper链接器错误:Undefinedsymbolsforarchitecturex86_64:"___atomic_compare_exchange_16",referencedfrom:我知道我可能需要添加-latomic。使用AppleLLVM9.1.0,我不需要它,对此我有一种非常糟糕的预感。如果它是无锁的,你通常不需要链接到任何额外的