1.在M1 Mac上编译使用arm64原生go
2.[推理部署]👉Mac源码编译TensorFlow C++指北
3.macåpythonç¨ä»ä¹è½¯ä»¶(macä¸å¥½ç¨çpythonè¯è¨ç¼ç¨è½¯ä»¶)
4.Python 安装和环境搭建(Mac版)
5.MacBook(m1)源码编译opencv
6.Mac OS下从源码编译、码编安装Seismic Unix
在M1 Mac上编译使用arm64原生go
年月日更新:go官方已发布1. beta版,码编无需自行编译即可下载安装。码编
预计年2月,码编go 1.版将正式支持Apple Silicon(使用arm架构的码编M1新芯片的Mac操作系统),但目前可通过下载最新源码并编译,码编apk文件可以看源码吗获取原生arm版的码编go。
操作在m1 mac mini上完成,码编go工具链安装在$HOME/goroots路径下。码编mac上需确保已安装rosetta 2。码编
首先,码编下载并安装amd的码编go 1.版本。通常仅需下载即可。码编
通过clone方式获得go源码。码编从github.com/golang/go仓库克隆,码编master分支即为1.预发布版本。
预编译darwin/arm工具链。此工具链本身应为arm版,重庆源码学习否则最终编译结果可能为x。编译过程中需要关闭GODEBUG设置中的asyncpreemptoff参数,以避免因依赖rosetta 2而出现的协程异步抢占bug。
完成编译后,在$HOME/goroots/go-darwin-arm-bootstrap路径下获取到完整的go arm工具链。
编译后可使用$HOME/goroots/gosource/bin/go获得arm版的go。将该路径添加到PATH环境变量中,即可在系统中使用原生go。
性能参考:测试项目gorazor(sipin/gorazor)在windows ik CPU下的go test需2.秒;使用编译出的原生go版本所需时间为0.秒;使用rosetta 2运行amd的go 1.则需0.秒。
[推理部署]👉Mac源码编译TensorFlow C++指北
在Mac环境下编译TensorFlow C++源码,需要完成以下步骤,以避免可能的编译问题,确保顺利构建。
首先,确认系统环境满足要求。需有Xcode和Command Line Tools,JDK 1.8.0版本以支持编译过程中所需的打字接单源码Java环境,以及Bazel工具,TensorFlow依赖此工具进行编译。特别注意Bazel版本需与TensorFlow对应,如TensorFlow 1.对应Bazel 0..1。
接下里,安装依赖,包括JDK和Bazel。JDK安装时需检查电脑中是否已安装,并确保正确安装。使用HomeBrew安装Bazel,通过命令行接受协议,并使用`--user`指令确保安装在个人目录的`bin`文件夹下,同时设置`.bazelrc`路径为`$HOME/.bazelrc`。
安装自动化工具`automake`和使用Python3.7.5在虚拟环境中构建TensorFlow C++源码。推荐使用清华镜像源加速`pip`的安装过程。通过`git clone`方式下载TensorFlow源码,确保checkout至r1.分支。源码代理设置调整域名映射以提升`git clone`速度。
进行编译选项配置,通常在TensorFlow文件夹内运行命令,根据提示选择默认选项。
开始编译TensorFlow,此过程可能需要较长时间,完成后,应在`bazel-bin/tensorflow`目录下找到编译好的`libtensorflow_cc.so`和`libtensorflow_framework.1.dylib`文件。
若遇到`Undefined symbols for architecture x_: “_CFRelease”`错误,这通常与创建软连接有关,无需特别处理。若需要手动安装额外依赖库,如Eigen3,可参考相关指南。
编译完成后,可对C++接口进行测试,验证编译过程的军旗对战源码正确性。通常情况下,Mac下的TensorFlow 1. C++源码编译完成。
最后,编译TFLite,生成的动态链接库将保存在指定目录下。在`CMakelists.txt`文件中增加对应配置项,以完成TFLite的构建。
总结而言,Mac下TensorFlow 1. C++源码编译及TFLite的构建,需要遵循上述步骤,并确保环境与工具版本的兼容性,以顺利进行编译过程。Linux系统下的编译方式相似,但具体细节可能有所不同。
macåpythonç¨ä»ä¹è½¯ä»¶(macä¸å¥½ç¨çpythonè¯è¨ç¼ç¨è½¯ä»¶)
Macä¸ç¨ä»ä¹åpython
Vimï¼æ¨èå¦ä¹ ï¼Pythonè§é¢æç¨ï¼
Vimå¯ä»¥è¯´æ¯Pythonæ好çIDEãVimæ¯é«çº§ææ¬ç¼è¾å¨ï¼æ¨å¨æä¾å®é çUnixç¼è¾å¨âViâåè½ï¼æ¯ææ´å¤æ´å®åçç¹æ§éãVimä¸éè¦è±è´¹å¤ªå¤çå¦ä¹ æ¶é´ï¼ä¸æ¦ä½ éè¦ä¸ä¸ªæ ç¼çç¼ç¨ä½éªï¼é£ä¹å°±ä¼æViméæå°ä½ çå·¥ä½æµä¸ã
EcppsewithPyDev
Ecppseæ¯é常æµè¡çIDEï¼èä¸å·²ç»æäºå¾ä¹ çåå²ãEcppsewithPydevå 许å¼åè å建æç¨å交äºå¼çWebåºç¨ãPyDevæ¯Ecppseå¼åPythonçIDEï¼æ¯æPythonï¼JythonåIronPythonçå¼åã
SubpmeText
SubpmeTextæ¯å¼åè ä¸ææµè¡çç¼è¾å¨ä¹ä¸ï¼å¤åè½ï¼æ¯æå¤ç§è¯è¨ï¼èä¸å¨å¼åè 社åºé常å欢è¿ãSubpmeæèªå·±çå 管çå¨ï¼å¼åè å¯ä»¥ä½¿ç¨TAæ¥å®è£ ç»ä»¶ï¼æ件åé¢å¤çæ ·å¼ï¼ææè¿äºé½è½æåä½ çç¼ç ä½éªã
Emacs
GNUEmacsæ¯å¯æ©å±ï¼èªå®ä¹çææ¬ç¼è¾å¨ï¼çè³æ¯æ´å¤çåè½ãEmacsçæ ¸å¿æ¯EmacsLisp解æå¨ï¼ä½æ¯æ¯æææ¬ç¼è¾ãå¦æä½ å·²ç»ä½¿ç¨è¿Vimï¼å¯ä»¥å°è¯ä¸ä¸Emacsã
KomodoEdit
KomodoEditæ¯é常干åï¼ä¸ä¸çPythonIDEã
PyCharm
PyCharmæ¯JetBrainså¼åçPythonIDEãPyCharmç¨äºä¸è¬IDEå ·å¤çåè½ï¼æ¯å¦ï¼è°è¯ãè¯æ³é«äº®ãProject管çã代ç 跳转ãæºè½æ示ãèªå¨å®æãåå æµè¯ãçæ¬æ§å¶â¦â¦å¦å¤ï¼PyCharmè¿æä¾äºä¸äºå¾å¥½çåè½ç¨äº[Django]å¼åï¼åæ¶æ¯æGoogleAppEngineï¼æ´é ·çæ¯ï¼PyCharmæ¯æ[IronPython]ï¼
Wing
WingwareçPythonIDEå ¼å®¹Python2.xå3.xï¼å¯ä»¥ç»åDjango,matplotpb,Zope,Plone,AppEngine,PyQt,PySide,wxPython,PyGTK,Tkinter,mod_wsgi,pygame,Maya,MotionBuilder,NUKE,Blenderåå ¶ä»Pythonæ¡æ¶ä½¿ç¨ãWingæ¯ææµè¯é©±å¨å¼åï¼éæäºåå æµè¯ï¼noseåDjangoæ¡æ¶çæ§è¡åè°è¯åè½ãWingIDEå¯å¨åè¿è¡çé度é½é常快ï¼æ¯æWindows,Linux,OSXåPythonversiã
PyScripter
PyScripteræ¯æ¬¾å è´¹å¼æºçPythonéæå¼åç¯å¢ï¼IDEï¼ã
TheEricPythonIDE
Ericæ¯å ¨åè½çPythonåRubyç¼è¾å¨åIDEï¼æ¯ä½¿ç¨Pythonç¼åçãEricåºäºè·¨å¹³å°çGUIå·¥å ·å Qtï¼éæäºé«åº¦çµæ´»çScintillaç¼è¾å¨æ§ä»¶ãEricå æ¬ä¸ä¸ªæ件系ç»ï¼å 许ç®åç对IDEè¿è¡åè½æ§æ©å±ã
InteractiveEditorforPython
IEPæ¯è·¨å¹³å°çPythonIDEï¼æ¨å¨æä¾ç®åé«æçPythonå¼åç¯å¢ãå æ¬ä¸¤ä¸ªéè¦çç»ä»¶ï¼ç¼è¾å¨åShellï¼å¹¶ä¸æä¾æä»¶å·¥å ·éä»å个æ¹é¢æ¥æé«å¼å人åçæçã
æ´å¤Pythonç¸å ³ææ¯æç« ï¼è¯·è®¿é®Pythonæç¨æ ç®è¿è¡å¦ä¹ ï¼ä»¥ä¸å°±æ¯å°ç¼å享çå ³äºMacä¸ç¨ä»ä¹åpythonç详ç»å 容å¸æ对大家ææ帮å©ï¼æ´å¤æå ³pythonæç¨è¯·å ³æ³¨ç¯çéè¤å ¶å®ç¸å ³æç« ï¼
pythonç¨ä»ä¹è½¯ä»¶ãPython3.9.7软件ãç¾åº¦ç½çèµæºå è´¹ä¸è½½:
é¾æ¥:
pwd=nhfcæåç :nhfcPython3.9.7ææ°æ£å¼çæ¯ä¸ç§é¢å对象ãç´è¯å¼è®¡ç®æºç¨åºè®¾è®¡è¯è¨ï¼ä¹æ¯ä¸ç§åè½å¼ºå¤§èå®åçéç¨åè¯è¨ï¼å·²ç»å ·æåå¤å¹´çåå±åå²ï¼æçä¸ç¨³å®ãpythonå ·æé常ç®æ·èæ¸ æ°çè¯æ³ç¹ç¹ï¼ä¸å ä¹å¯ä»¥å¨ææçæä½ç³»ç»ä¸è¿è¡ï¼é常éåå®æåç§é«å±ä»»å¡ï¼éçä¸æçæ´æ°ä¼åï¼éæ¸è¢«ç¨äºç¬ç«çã大å项ç®çå¼åï¼åªä¸ºç»ç¨æ·æ´å å®ç¾çæä½ä½éªã
æä»ä¹è½¯ä»¶å¯ä»¥åpythonç¼åpythonæºä»£ç ç软件.é¦æ¨çPycharmã
PyCharmç¨äºbaiä¸è¬IDEå ·å¤çåè½ï¼æ¯å¦ï¼è°è¯ãè¯æ³é«äº®ãProject管çãdu代ç 跳转ãæºè½æ示ãèªå¨å®zhiæãåå æµè¯ãçæ¬æ§å¶
å¦å¤ï¼PyCharmè¿æä¾äºä¸äºå¾å¥½çåè½ç¨äºDjangoå¼åï¼åæ¶æ¯æGoogleAppEngineï¼æ´é ·çæ¯ï¼PyCharmæ¯æIronPythonã
å ¶æ¬¡æ¯sublimetextï¼SublimeTextæ¯æå¤ç§ç¼ç¨è¯è¨çè¯æ³é«äº®ãæ¥æä¼ç§ç代ç èªå¨å®æåè½ï¼è¿æ¥æ代ç ç段(Snippetï¼çåè½ï¼å¯ä»¥å°å¸¸ç¨ç代ç ç段ä¿åèµ·æ¥ï¼å¨éè¦æ¶éæ¶è°ç¨ãæ¯æVIM模å¼ï¼å¯ä»¥ä½¿ç¨Vim模å¼ä¸çå¤æ°å½ä»¤ãæ¯æå®ï¼ç®åå°è¯´å°±æ¯ææä½å½å¶ä¸æ¥æè èªå·±ç¼åå½ä»¤ï¼ç¶åææ¾åæå½å¶çæä½æè å½ä»¤ã
è¿æJupyter,JupyterNotebook(æ¤å被称为IPythonnotebook)æ¯ä¸ä¸ªäº¤äºå¼ç¬è®°æ¬ï¼æ¯æè¿è¡å¤ç§ç¼ç¨è¯è¨ã
æåå°±æ¯æåºæ¬çnopad++ï¼æå¼å§çæ¶åæ¯å®ç¨è¿æ¬¾ä½ä¸ºå¼åå·¥å ·è¿è¡åºç¡ç»ä¹ ã
wingproæªæ³¨åéå¶
WingProforMac(Pythonå¼åå·¥å ·)æªæ³¨åéå¶æ¿æ´»ç
--
é 读
WingPro(Pythonå¼åç¯å¢)å ¨åWingIDEPro,软件åºäºpythonç¼ç¨è¯è¨å¼åç¯å¢ï¼æ¥æé常å¤pythonideçåè½ï¼æ以软件ä¹æ¯æå¼åpython项ç®ï¼è½¯ä»¶å°å·§ç®åï¼å°±ç®è¿è¡å¤æ代ç ä¹ä¸ä¼è¶ è¿Må åï¼éåä¸äºæ§è½æ¯è¾å·®ççµèï¼WingProæ¯æè°è¯å°æ¹æ¡çè½å°ï¼æ¯ä¸æ¬¾é常强大çç¼ç¨è½¯ä»¶ã
mac软件ä¸è½½ï¼WingProforMac
WingPromacçåè½ä»ç»
强大çè°è¯å¨
WingIDEProforMacç ´è§£ççè°è¯å¨å¯ä»¥è½»æ¾ä¿®å¤é误并以交äºæ¹å¼ç¼åæ°ä»£ç ã使ç¨æ¡ä»¶æç¹æ¥é离é®é¢ï¼ç¶åéæ¥æ§è¡ä»£ç ï¼æ£æ¥æ°æ®ï¼è§å¯å¼ï¼ä»DebugProbeçå½ä»¤è¡è¿è¡äº¤äºï¼ä»¥åéå½è°è¯ãæ¨å¯ä»¥è°è¯ä»IDEå¯å¨çå¤è¿ç¨åå¤çº¿ç¨ä»£ç ï¼æ管å¨Webæ¡æ¶ä¸ï¼ä»åµå ¥å¼Pythonå®ä¾è°ç¨æå¨è¿ç¨ç³»ç»ä¸è°ç¨ã
æºè½ç¼è¾å¨
WingIDEProforMacç ´è§£ççç¼è¾å¨éè¿éåä¸ä¸æçèªå¨å®æåææ¡£ï¼è°ç¨è¾ å©ï¼èªå¨ç¼è¾ï¼éæï¼ä»£ç æå ï¼å¤éï¼å¯èªå®ä¹çå è代ç ç段ï¼ä¹¦ç¾çæ¥å é交äºå¼Pythonå¼åãWingå¯ä»¥æ¨¡æviï¼emacsï¼Eclipseï¼VisualStudioåXcodeã
ç®åç代ç 导èª
WingIDEProforMacç ´è§£çéè¿goto-definitionï¼æ¥æ¾ç¨éï¼å¨é¡¹ç®ä¸æ¥æ¾ç¬¦å·ï¼ç¼è¾å¨ç¬¦å·ç´¢å¼ï¼æºæµè§å¨ä»¥å强大çå¤æ件æç´¢ï¼å¯ä»¥è½»æ¾ç»è¿ä»£ç ã
综ååå æµè¯
WingIDEProforMacç ´è§£çæ¯æ使ç¨unittestï¼doctestï¼noseï¼pyteståDjangoæµè¯æ¡æ¶è¿è¡æµè¯é©±å¨çå¼åã使ç¨Wing强大çè°è¯å¨å¯ä»¥è½»æ¾ä¿®å¤å¤±è´¥çæµè¯ã
è¿ç¨å¼å
WingIDEProforMacç ´è§£ççå¿«éé ç½®è¿ç¨å¼åæ¯æ使æ¨å¯ä»¥ä½¿ç¨å¨è¿ç¨ä¸»æºï¼VMæ容å¨ä¸è¿è¡çPython代ç æ ç¼ï¼å®å ¨å°ä½¿ç¨Wingçææåè½ã
å¯å®å¶åå¯æ©å±
Python 安装和环境搭建(Mac版)
Python 是一种广泛使用的编程语言,以其简洁优雅的语法和高效的数据结构设计而受到欢迎。它不仅适用于脚本编写和快速应用开发,还因其强大的扩展性和面向对象编程能力而在多个领域大放异彩。Python 的源代码和可执行文件通常可免费从官方站点 python.org 下载,同时网站上还有丰富的第三方模块、程序、工具资源以及详细文档。
对于 Mac 平台的用户,建议从 Python 官网下载安装最新版本的 Python,而不仅仅是随 Mac OS X 预装的 Python 2.7,因为 Python 3.7 以上版本提供了更好的性能和安全性。安装后,Apple 会将 Python 版本分别安装在 /System/Library/Frameworks/Python.framework 和 /usr/bin/python 中,但切记不修改或删除这些文件,因为它们由 Apple 控制,并可能被其他软件使用。
安装 Python 后,用户可以通过终端输入 `python -V` 来查看已安装的 Python 版本,或使用 `python -h` 来获取所有可用帮助信息。Apple 提供的 Python 版本默认集成在系统中,而从 python.org 安装的版本则作为补充,用户需要通过环境变量来区分。
为了提高 Python 开发效率,用户可以安装编辑器或集成开发环境(IDE)。推荐使用 Anaconda,它集成了 Jupyter notebook 和 VS Code,适合快速启动 Python 项目。Jupyter notebook 是一款强大的交互式应用,尤其适合探索数据和演示代码,其交互性为 Python 开发带来了巨大便利。
另外,PyCharm 是一个专业的 Python IDE,提供代码补全、智能提示、语法检查等功能,特别适合大型项目的开发。Sublime Text、VS Code 和 Atom 等轻量级编辑器同样支持 Python 开发,尤其适合初学者,它们提供了代码高亮、自动补全和语法提示等基本功能,启动速度快,配置方便。
选择 Python 版本时,需确认您的电脑架构是 位还是 位,以便正确安装相应的版本。Mac 用户可以通过查看系统信息或官方提供的指南来确认。
MacBook(m1)源码编译opencv
首先,从GitHub上获取OpenCV的源代码是实现MacBook (m1)本地编译的关键步骤。你可以通过运行以下命令来拉取最新版本:
bash
git clone 的博客;3Github的Seismic Unix项目页面;4apple.stackexchange.com的技术问答;以及5cwpsu_vr1的官方文档。
通过这些步骤,你就能在Mac OS上成功安装和使用Seismic Unix,满足地震领域科研的需求。
高级Mac OS X编程内容简介
Mac OS X是苹果电脑操作系统的最新版本,首次发布于年。它由两个部分组成:Darwin,这是一个基于BSD原始码和Mach微核心的开放源代码环境,苹果公司采用并与其他开发者合作进行进一步开发;以及Aqua,这是由苹果公司开发的有版权的GUI。
Mac OS X Server于年与工作站版本一同发布。在架构上,两者相同,但在包含的工作组管理和管理软件工具上有所差异,提供对关键网络服务的简化访问,如邮件传输服务器、Samba软件、LDAP目录服务器以及域名服务器。它还具有不同的授权类型。
关于Mac OS X编程的书籍有很多,但《高级Mac OS X编程:Big Nerd Ranch指南》是唯一一本详细解释如何利用强大底层技术的书籍。这本书更新了Mac OS X .5和.6版,并涵盖了新科技,如DTrace、Instruments、Grand Central Dispatch、闭包和NSOperation。