目前GEOS最新的3.7.1版本支持camke进行编译。经过尝试发现通过cmake生成的工程在vs2015下面编译的时候还是存在问题,而且在中文网上也没找到解决方案。...解压出geos-3.7.1文件夹,双击运行其中的autogen.bat。 在目录中找到nmake.opt,这个文件控制着nmake编译的一些参数。...ENDIF 通过注释知道这里控制编译出的是64位版本还是32位版本,我这里用的64版本,所以改为WIN64=YES。...ENDIF 同样通过注释知道这里控制编译出的是Release版本还是debug版本,我这里用的debug版本,所以改成BUILD_DEBUG=YES。...修改好配置之后,找到VS2015的本机工具命令提示符,CD到geos-3.7.1文件夹,输入命令: nmake /f makefile.vc 然后等待编译完成就可以了,最终的输出结果在geos-3.7.1
推荐两篇很好的文章 python核心 - 打包与发布 使用ReadtheDocs托管文档 准备 注册账号 很显然地要在Pypi上注册一个账号,记住账号和密码。...安装必要的库 setuptools 原则上安装了pip的环境都有setuptools,但并不影响你去尝试升级一下它。...pip install --upgrade setuptools twine 这是一个简化将库发布到Pypi上流程的工具,具体的使用之后会讲到。...另外在重新上传之前我们要修改version.py里的版本号,以免覆盖了以前的上传。...大功告成 之后我们就可以在Pypi里搜索到自己的Python库了,当然也可以直接通过pip安装。
发布PyPI(简单) #0 GitHub https://github.com/Coxhuang/get_time #1 环境 Python3.6 twine==1.13.0 # 需要pip下载 #2...准备 #2.1 注册PyPI账号 https://pypi.org/ #2.2 安装环境 pip3 install twine #3 开始 #3.1 新建文件夹 . ├── get_time # 文件夹...│ └── __init__.py # 把需要发布的代码放到里面 └── setup.py # 配置文件 init.py import datetime, time import calendar...) return ret def get_timestamp(detail=True): """ 获取当前时间戳 :param detail: True输出完整的时间戳...setuptools import setup setup( name='get-time', # 项目的名称,pip3 install get-time version='0.0.4', # 项目版本
pypiserver 是一个最基本的PyPI服务器实现, 可以用来上传和维护Python包. 本文介绍 pypiserver 在Ubuntu上的基本安装, 配置和使用. 1....将分发包上传到 ~/packages 目录下, 接下来就可以访问 pypiserver 上的Python包了. 1.3 安装 pypiserver 上的Python包 在安装和启动 pypiserver..._demo-0.0.1.tar.gz_包 1.3.1 pip 在本地环境中, 可以使用 pip 的 index-url 参数来访问 pypiserver 上的Python包: # pip search...的上传操作是密码保护的, 不过可以通过以下启动参数来关闭密码保护: pypi-server -P ....我们可以使用-P参数来修改: pypi-server -P /opt/pypiserver/packages 3.3 请求转发 当请求的Python包, 在本地 pypiserver 上没有找到时, 它会将请求转发到外部
pypiserver 是一个最基本的PyPI服务器实现, 可以用来上传和维护python包. 本文介绍 pypiserver 在ubuntu上的基本安装, 配置和使用. 1....将分发包上传到 ~/packages 目录下, 接下来就可以访问 pypiserver 上的Python包了. 1.3 安装 pypiserver 上的Python包 在安装和启动 pypiserver...image 1.3.1 pip 在本地环境中, 可以使用 pip 的 index-url 参数来访问 pypiserver 上的Python包: # pip search -i http://localhost...的上传操作是密码保护的, 不过可以通过以下启动参数来关闭密码保护: pypi-server -P ....我们可以使用-P参数来修改: pypi-server -P /opt/pypiserver/packages 3.3 请求转发 当请求的Python包, 在本地 pypiserver 上没有找到时,
创建项目文件夹 mkdir dada_openapi_python cd dada_openapi_python 创建包文件夹 在里面在创建一个 dada_openapi_client 的文件夹,这个文件夹的名称我故意创建的和上层目录不一样...制作PyPI包 现在项目逻辑已经完成,那么开始做 PyPI 的包了 创建setup.py文件 在dada_openapi_python文件夹中,创建配置文件setup.py,并填写配置,下面贴出我的配置...=pypi [pypi]repository = https://upload.pypi.org/legacy/ username = XXX password = XXX` Upload failed...Incomplete registration; check your email 你的PyPI账户还没完成邮箱验证,你需要去注册邮箱找到一封验证邮件完成验证后再重试失败的步骤。...failed (400): File already exists 文件已经存在了,你每一次上次都应该更新版本号。
或者while循环,一个一个访问每个位置的元素,直到数组末尾。STL里面甚至有专门的迭代器,针对具体的集合类对象,有对应使用的迭代器。...STL的迭代器提供了丰富的遍历方法,如访问集合对象的首位元素、末位元素、指定位置的元素、下一个元素……怎么样,是不是感觉有了迭代器,遍历方法不再是难事了?...针对聚合对象的遍历,迭代器模式是一种很有效的解决方案,也是一种使用频率很高的设计模式。 迭代器模式: 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。...,因此代码里需要前向声明某个类(具体操作见上,代码资源见https://github.com/FengJungle/DesignPattern)。...优点: 支持以不同的方式遍历一个聚合对象,在同一个聚合对象上可以定义多个遍历方式。 简化了聚合类,使得聚合类的职责更加单一; 迭代器模式中引入抽象层,易于增加新的迭代器类,便于扩展,符合开闭原则。
原文链接:https://support.google.com/chrome/answer/6213033 NPAPI 插件无法在 Chrome 42 版及更高版本上正常运行 您可以利用插件在浏览器中添加一些额外的功能...例如,您可以观看某些类型的视频或者玩网页版游戏。 NPAPI 支持已结束 过去,许多插件都是使用一种称为 NPAPI 的旧系统开发的。...支持哪些插件 使用 Pepper API (PPAPI) 这种更新、更安全的系统的插件将继续正常使用,包括 Chrome 自带的那些插件,如 Adobe Flash 和 PDF 查看器。...在屏幕顶部的地址栏中,输入 chrome://flags/#enable-npapi 在随即打开的窗口中,点击启用 NPAPI 标记下方显示启用的链接: 点击页面左下角的立即重新启动按钮。...Chrome 45 版本发布后,您将需要使用其他网络浏览器来加载需要 NPAPI 插件的内容。
PyPi的用途 Python中我们经常会用到第三方的包,默认情况下,用到的第三方工具包基本都是从Pypi.org里面下载。...它告诉PyPI我们的项目叫什么名字,是什么版本,依赖哪些库,支持哪些操作系统,可以在哪些版本的Python上运行,等等。...需要注意的是,PyPI上只允许一个版本存在,如果后续代码有了任何更改,再次上传需要增加版本号 author和author_email:项目作者的名字和邮件, 用于识别包的作者。...需要先安装twine(用 twine上传分发包,并且只有 twine> = 1.11.0 才能将元数据正确发送到 Pypi上) pip install twine 3、安装完之后,运行下面的命令将库上传...3.验证发布PYPI成功 上传完成了会显示success,我们直接可以在PyPI上查看,如下: ? 您可以使用pip来安装包并验证它是否有效。
://pypi.tuna.tsinghua.edu.cn/simple Collecting shapely Downloading https://pypi.tuna.tsinghua.edu.cn..._buildcfg import geos_version_string, geos_version, \ File "C:\Users\xiaos\AppData\Local\Temp\pip-install...-73psdp3n\shapely\shapely\_buildcfg.py", line 200, in lgeos = CDLL("geos_c.dll")..._name, mode) OSError: [WinError 126] 找不到指定的模块。...解决方法 使用conda,如果没有conda环境建议从这里安装miniconda,选取对应的系统,选择较新的版本。
pypi注册与配置 在pypi的官网:https://pypi.python.org/pypi 注册自己的账号 激活账号之后,我们还需要将在本地配置一份文件 在用户的根目录创建文件 : .pypirc...在文件里输入自己的账号和密码 $ nano ~/.pypirc # 创建文件 [distutils] index-servers = pypi [pypi] repository: https:...//pypi.python.org/pypi username: 你的账号 password: 你的密码 配置好之后,我们前期准备就做好了 配置安装项 由于是最基本的记录 只需要在项目根目录配置setup.py...name: 项目名称 author:作者 license: 开源协议 url: 项目地址 version: 版本号 description: 一句话描述 long_description: 长文本描述...上传项目 这里也是一行命令的事 python setup.py bdist_wheel upload 这样就能在自己的pypi主页看到上传上去的程序了 . 接下来就可以直接用pypi安装啦 . ?
构建自己的Python包到Pypi 作者:matrix 被围观: 5 次 发布时间:2023-04-28 分类:Python | 无评论 » 安装构建工具 首先确保安装了setuptools...wrapper.py:自己定义的文件,包含功能代码 __init__.py 包定义,以及可引入的方法 配置setup.py setup.py可配置作者、readme、仓库等信息 import os from...https://github.com/Hootrix/text-box-wrapper", ) 构建 $ python3 setup.py sdist bdist_wheel 说明: 将在dist的新文件夹中生成源代码和二进制分发文件...上传到Pypi 确保已经注册了PyPI账户 $ twine upload dist/* 正常操作输入pypi账户和密码即可完成推送 如果账户设置了两步验证可能需要使用api token 保存你的api...token到~/.pypirc文件中,如果没有就自己新建 [pypi] username = __token__ password = pypi-A1************bQ 执行推送后类似下面内容
JDK13,正好是我想要安装的JDK版本,如果不是你想要的版本可以自己搜索相应的 Homebrew Tap。...但是另一个问题来了,我电脑上原来安装的JDK8去哪呢?我如何在不同的版本中随意切换呢?比如像Node的nvm,Ruby的rvm,Python的pyenv等。...JAVA_HOME,最好开启export插件: $ jenv enable-plugin export $ exec $SHELL -l 管理不同版本的JDK 添加JDK 添加最新安装的JDK: $ jenv...JENV_VERSION environment variable) 1.8.0.191 13 openjdk64-13 oracle64-1.8.0.191 默认情况下,system指的是系统中安装的最新版本的...切换JDK版本 Global 设置全局模式下的JDK版本: $ jenv global 13 $ exec $SHELL -l $ java -version Local 在某个工作目录下设置JDK版本
⾸先保证 homebrew 为最新版本,先升级 homebrew 到最新 brew update 然后升级 PHP 版本 brew upgrade php 使⽤php -v检查 php 版本 php...-v 如果没有升级成功或者其他报错,可以使⽤ brew install php@7.4 直接安装 php 7.4 版本。...修改服务器对应的 PHP 版本 修改nginx 或者apache的配置⽂件,以 apache为例: sudo vim /etc/apache2/httpd.conf 找到 LoadModule php7...php 7.4 版本,在服务器的根⽬录index.php中 <?...曾尝试过修改 php.ini 的扩展⽬录为之前的,但是报错 ; Directory in which the loadable extensions (modules) reside.
在提交 App 至“App 审核”前,请(从你为该版本上传的所有构建版本中)选择你想要提交的版本。一个 App Store 版 本仅可关联一个构建版本。...但是,在提交该版本至“App 审核”之前,你可以任意更改你的构建版本。 1.从“我的 App”中,选择你的 App。页面打开时默认选中“App Store”标签页。...2.在侧边栏中找到你想要选择的平台,并在下方点按 App 版本。 3.在右侧,向下滚动至“构建版本”部分,点按“构建版本”旁的添加按钮(+)。...仅在你已上传构建版本,但尚未选择某个构建版本时,添加按钮才会显示。如果已有构建版本,请先移除构建版本。 4.在“添加构建版本”对话框中,选择您想要提交的构建版本。...如果你 App 的某个先前版本在 App Store 中为“可供销售”状态,那么构建版本列表仅包含您在该版本上架之后上传的 构建版本。 5.点按“完成”。
Premiere Pro是一款由Adobe公司开发的专业视频剪辑和制作软件,其最新版本是2022版,提供了一系列强大的视频编辑工具和功能让用户能够在不同的场景下完成高质量的视频创作。...软件全版本安装包获取指南:zyku666.com首先,Premiere Pro 2022与众不同的地方是其全平台支持。...且这些功能具有高度的自定义性,用户可以根据自己的创作需求自由调整。Premiere Pro 2022最新版本还增加了一些新特性和改进,比如无缝衔接和自动同步音频、支持多个帧率的素材编辑等。...此外,Premiere Pro 2022 还提供了强大的剪辑版本管理功能,可方便用户追溯和比较不同版本的剪辑。总之,Premiere Pro 2022是一款功能强大的视频剪辑软件。...其全平台支持、丰富的编辑功能和高效的剪辑资源管理,使得用户能够更快速地完成高质量的视频创作。
项目的github链接为:nvm-windows 可以点击上一段的链接下载1.1.3版本的切换软件,如果更新了,那就要按照github中给出的最新文档来,这次有点费力就是吃了没看英文文档的亏。...推荐看这个知乎上的教程:安装管理多个版本的node.js。...切换安装源 这就是最大的坑,我看了几篇教程,打开setting文件各种设置都不管用,最后返璞归真,从github的文档中才发现如何在国内切换到正确的安装源上。...我一开始没切换,结果使用nvm install命令总是报连不上服务器,没法获取版本地址,大概试了10次,后来在说明文档上发现需要用命令进行设置,其实本质也是写到setting文件中,具体为: nvm node_mirror...切换到淘宝的npm镜像 这之后就顺畅多了,基本一路安装,我安装了4.4.4和6.10.1两个版本 补回失去的全局模块 对照第二步中的截图,一般情况下,在国内全局安装的第一个包都是cnpm,所以直接npm
新版wireshark就安装完成了 旧版wireshark的回退 为什么要回退呢,因为我之前版本是3.1版本,发现没有表达式这个功能,并且一些协议帧也解析不出来,没找到原因,只能回退了。 ?...删除重装之后居然发现装上的还是新版的wireshark。 然后想起来在升级的时候添加了官方ppa源,所以在以后的安装中都会默认安装更新的版本。...首先删除ppa源 cd /ect/apt/sources.list.d 找到新版wireshark的ppa源的保存文件删除,具体的名字忘记了,是wireshark开头的一个文件 sudo rm wiresharkxxxx...更新apt-get sudo apt-get update 删除wireshark和相关的wireshark-common,否则安装老版本时会提示失败 sudo apt-get remove wireshark...sudo apt-get remove wireshark-common 然后就可以安装老版本的wiershark了 sudo apt-get install wireshark
在Ubuntu上安装Caffe 如果Ubuntu版本是>= 17.04的,就可以使用以下的方式安装Caffe,注意安装的是Python 3的版本。...apt install caffe-cpu 如果是低于这版本,就要使用源码编译了,笔者的系统是64位的Ubuntu 16.04,下面就介绍安装步骤,使用的Python 2。...版本的Caffe,即如下: CPU_ONLY := 1 然后版96、97、98行,改成如下: # Whatever else you find you need goes here....export PYTHONPATH=/opt/caffe/python:$PYTHONPATH 我们可以简单测试一下是否安装成功了,正常的话是可以输出caffe的版本信息的。...out['prob']输出的是每个label的概率,使用到的synset.txt也是刚才那个GitHub上的文件,这个文件的内容是每个label对应的名称。
但是一个人进行项目开发更趋向于理想化,更多的则是团队协同开发。这时,咱们就需要了解一个非常重要的概念啦,那就是“版本控制”。 在此,咱们可以简单回顾“版本控制”的发展史。...起初,并没有关于版本控制的概念,在协同开发的时候,大家都是自己保持项目代码,或者互相拷贝代码,这样在合并代码的过程中就难免遇到很多不兼容的问题;这就促使“集中式版本控制系统(CVCS)”的出现,例如 SVN...不过在一般情况下,咱们仅需要下载一个版本控制系统的客户端即可,在这里,根据操作系统分别推荐一个博主感觉非常好用的版本控制系统客户端: Windows 版本控制系统客户端:TortoiseSVN; Mac...IntelliJ IDEA 只是自带了对这些版本控制系统的支持插件,但是咱们想使用什么版本控制系统仍然得安装什么版本控制系统的客户端,否则照样用不了。...如上图中 标注1 所示,IntelliJ IDEA 对版本控制的支持都是以插件的方式来实现的。
领取专属 10元无门槛券
手把手带您无忧上云