Anaconda破坏了命令行Xcode构建

时间:2019-01-18 19:14:53

标签: xcode build environment-variables anaconda ld

在Mac上安装Anaconda时,会设置环境变量LD=/anaconda3/bin/x86_64-apple-darwin13.4.0-ld

从命令行运行Xcode构建时(例如构建迦太基依赖项),LD的值将插入到链接器命令中:

Ld /Users/maxim/Library/Caches/org.carthage.CarthageKit/DerivedData/10.1_10B61/GeoJSONMap/0.0.8/Build/Intermediates.noindex/ArchiveIntermediates/GeoJSONMap/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/GeoJSONMap.framework/GeoJSONMap normal arm64 (in target: GeoJSONMap)
    cd /Users/maxim/Carthage/Checkouts/GeoJSONMap
    export IPHONEOS_DEPLOYMENT_TARGET=11.0
    /anaconda3/bin/x86_64-apple-darwin13.4.0-ld -arch arm64 -dynamiclib <... skipped for brevity ...>

...结果为ld: unknown option: -dynamiclib

因此,问题是:如何以适当的方式避免这种干扰?是否可以从Xcode构建过程中获取变量LD?是否可以将Anaconda配置为使用其他变量?运行Xcode构建时,是否可以暂时取消Anaconda设置? Xcode期望LD的预期值是什么?

1 个答案:

答案 0 :(得分:2)

在conda版本大于或等于4.5(我认为)的情况下,运行就足够了

conda deactivate

从外壳中删除特定于conda的环境变量设置。如果您激活的环境不是conda deactivate以外的其他环境,则可能需要运行base多次。