标签: software-distribution

Visual Studio 2019 能否将其所需的 DLL 打包到一个小的 .exe 文件中?

我使用Visual Studio 2019用C++ WinAPI做了一个Windows应用程序,完成后,我构建了它,并在我的电脑上执行。它完美地工作。然后我发给了我没有 Visual Studio 的朋友。它说它需要“msvcp140d.dll”“ucrtbased.dll”“vcruntime140_1d.dll”“vcruntime140d.dll”来打开它。

然后我在我的电脑中找到它们,将它们与我的应用程序放在同一个目录中,然后将它们发送给我的朋友。它也工作得很好。

但我的问题是“有没有办法只用 Visual Studio 2019 打包它们?” 包含大量 DLL 的小应用程序有点奇怪。

c dll software-distribution visual-studio

8
推荐指数
1
解决办法
4459
查看次数

Swift Package - 分发带有包的独立可执行文件

我正在编写一个 Swift 脚本作为一个独立的 Swift 包。这个脚本的一部分需要生成一些文件,我有模板。

现在,这些模板不可编译(它们是 HTML 文件);所以为了将它们包含在包中,我将它们包含为.copy("Templates").

在调试我的脚本时,我可以很好地访问模板,但是当我尝试归档产品时,可执行文件无法访问它们

这是我的 Package.swift:

let package = Package(
    name: "flucs",
    products: [
        .executable(name: "Flucs",
                    targets: ["flucs"])
    ],
    dependencies: [
        .package(url: "https://github.com/MrSkwiggs/Netswift", .exact(.init(0, 3, 1))),
    ],
    targets: [
        .target(
            name: "flucs",
            dependencies: ["Netswift"],
            path: "Sources",
            resources: [
                .copy("Templates")
            ]),
        
        .testTarget(
            name: "flucsTests",
            dependencies: ["flucs"]),
    ]
)
Run Code Online (Sandbox Code Playgroud)

我的文件夹结构:

文件夹结构

如何分发我的脚本以便它也包含其资源?

bundle software-distribution swift swift-package-manager

8
推荐指数
1
解决办法
387
查看次数

如何共享/分发已编译的Objective-C代码(如Java中的JAR)?

我想写一些Objective-C代码进行分发.打包输出的最佳方法是什么?在Java中,您可以将代码打包在JAR文件中并进行分发.Objective-C中的等价物是什么?

以下链接很接近,但似乎解决了我不关心的更多命名空间问题.我最关心的是设置代码以便于分发.

Objective-C相当于Java包?

frameworks software-distribution objective-c

7
推荐指数
2
解决办法
1988
查看次数

如何创建Python模块分发以优雅地回退到纯Python代码

我编写了一个Python模块,我有两个版本:纯Python实现和C扩展.我编写了__init__.py文件,以便它尝试导入C扩展,如果失败,它会导入纯Python代码(这是合理的吗?).

现在,我想知道分发此模块的最佳方式是什么(例如写入setup.py),以便有或没有设施的人可以轻松地使用它来构建或使用C扩展,只需运行:

python setup.py install
Run Code Online (Sandbox Code Playgroud)

我的经验有限,但我看到两种可能的情况:

  • 用户没有安装在其计算机上的MS Visual Studio或GCC编译器套件来构建C扩展
  • 用户正在运行IronPython,Jython或CPython以外的任何其他内容.我只使用过CPython.因此,我不确定如何分发此模块,以便它能够顺利运行并且易于在这些平台上安装,如果它们无法使用C扩展.

python software-distribution

7
推荐指数
1
解决办法
1351
查看次数

简单高效地分发C++/Boost源代码(合并)

我的工作主要是工程分析,但我发现自己在同事中越来越频繁地分发代码.一个巨大的痛苦是并非每个用户都精通编译源代码的复杂性,而且我无法分发可执行文件.

我一直在使用Boost使用C++,问题是我无法请求每个网络的每个sysadmin安装库.相反,我想分发一个源文件(或尽可能少),以便用户可以g++ source.c -o program.

所以,问题是:你能用你的代码打包 Boost库,最终得到一个文件吗?我在谈论Boost库,它们只是"标题"或"仅模板".

作为灵感,请查看SQliteLemon Parser Generator的分布情况; 作者将这些东西合并为一个单独的源文件,这对于编译来说是微不足道的.

谢谢.

编辑:

SO中相关问题适用于Windows环境.我在Linux工作.

c++ boost software-distribution amalgamation

7
推荐指数
1
解决办法
2172
查看次数

将Python应用程序捆绑为单个文件以支持加载项或扩展?

有几个实用程序 - 都具有不同的过程,限制和目标操作系统 - 用于获取Python包及其所有依赖项,并将它们转换为易于发送给客户的单个二进制程序:

我的情况更进一步:第三方开发人员希望为我的应用程序编写插件,扩展或附加组件.当然,一个令人生畏的问题是,像Windows这样的平台上的用户最容易安装插件或插件,以便我的应用程序可以轻松发现它们已经安装.但除此基本问题之外还有另外一个问题:第三方开发人员如何将扩展与扩展本身需要的任何库(可能是二进制模块,如lxml)捆绑在一起,以便插件的依赖关系可以在同一时间导入插件可用的时间.

怎么能接近这个?我的应用程序是否需要在磁盘上使用自己的插件区域以及自己的插件注册表来使其易于处理?或者是否有一些通用机制,我可以避免自己编写,这将允许作为单个可执行文件分发的应用程序环顾四周并找到也作为单个文件安装的插件?

python software-distribution py2exe pyinstaller py2app

7
推荐指数
1
解决办法
1093
查看次数

在linux和windows中独立分发ruby应用程序

我已经在版本1.9.1上开发了ruby应用程序(桌面应用程序),只有很少的宝石(qtbindings).现在我想将我的应用程序作为独立发布给用户.我想将我的应用程序作为独立版本分发在linux中.做这项工作的最佳宝石/脚本是什么?

ruby deployment software-distribution

7
推荐指数
1
解决办法
4742
查看次数

打包命令行应用程序以进行分发?

我目前正在用Python编写命令行应用程序,需要以最易于下载和运行的方式向最终用户提供.对于那些可能没有安装Python(2.7)的Windows用户,我打算使用PyInstaller来生成一个独立的Windows可执行文件.然后用户可以简单地下载"myapp.exe"并运行myapp.exe [ARGUMENTS].

我还想为已安装Python的用户(在各种平台上)提供(较小的)下载.一种选择是将我的所有代码放入单个.py文件"myapp.py"(以...开头#! /usr/bin/env python),并使其可用.这可以下载,然后使用myapp.py [ARGUMENTS]或运行python myapp.py [ARGUMENTS].但是,将我的应用程序限制为单个.py文件有几个缺点,包括限制我组织代码的能力以及难以使用第三方依赖项.

相反,我想分发我自己的代码的几个文件的内容,以及一些(纯Python)依赖项.是否有任何工具可以将所有这些打包成一个文件,可以使用现有的Python安装轻松下载和运行?

编辑:请注意,我需要这些应用程序以便最终用户运行.它们不太可能已经pip安装,也没有其他任何超出Python核心的东西.使用PyInstaller,我可以生成一个文件,这些用户可以从Web下载并使用一个命令运行(或者,如果没有参数,只需双击).有没有办法在不使用PyInstaller的情况下实现这种易用性(即没有冗余地捆绑Python运行时)?

python packaging software-distribution

7
推荐指数
2
解决办法
1379
查看次数

安装包PackageKit时重定位应用程序包.如何禁用此行为?

我的程序错误地作为压缩包发布,但现在我计划添加必须在安装后启动的守护程序.所以我决定在安装时创建包,它将运行Post-Install脚本.首先,我创建一个这样的简单包:

 productbuil --component MyAppName.app /Applications --sign "common name of my certificate" MyAppName.pkg
Run Code Online (Sandbox Code Playgroud)

并尝试安装它.

安装成功但在我在/ Application目录中找不到应用程序包之后.我在/var/log/install.log中找到了这个poltergaste这行:

installd [1954]:PackageKit:Applications/MyAppName.app重定位到Users/myUserName/PAServer/scratch-dir/UserName1.Kh-profileName/MyAppName.app

之后我发现这个答案让OS X安装程序包像Pro-Xcode Developer ID一样准备pkg 并尝试执行其中的命令行.

pkgbuild --analyze --root ./MyProgram.app MyProgram.app.plist
pkgbuild:从./MyProgram.app pkgbuild的内容中推断包组件:将新的组件属性列表写入MyProgram.app1.plist

在我计划编辑plist文件但我首先尝试使用默认参数的简单构建包.

pkgbuild --root ./MyProgram.app --component-plist ./MyProgram.app.plist MyProgram.pkg pkgbuild:从./MyProgram.app.plist中读取组件pkgbuild:error:没有指定包标识符,也没有指定一个组件从中派生出来.

怎么了?

-----------------------------

我也试图安装旧版本的XCode aux工具来尝试使用PackageMaker,但是即使我安装了XCode 4.5,也找不到文档(我需要从命令行使用PackageMaker).我无法从GUI工具手动构建软件包,因为最终用户捆绑包放置了独特的资源库,而手动构建太昂贵了.所以我寻找自动建筑方法.

xcode command-line software-distribution

7
推荐指数
1
解决办法
1830
查看次数

在Mac上如何防止TextWrangler保存警报(此文件似乎已被修改)?

每当我在TextWrangler中保存文件时,都会不断收到带有文本的弹出式警报:

“ sample.sh中的文件可能已被另一个应用程序更改了磁盘上的文件。如果这样,保存此文档可能会导致数据丢失。确定要继续吗?”

这是弹出窗口本身*:

在此处输入图片说明

*图像是在macOS 10.13.6上拍摄的。

是什么原因造成的?如何防止这种情况发生?

macos textwrangler text software-distribution

7
推荐指数
2
解决办法
3048
查看次数