portability相关内容

如何以安全的方式使用便携式外壳创建临时文件?

我想在POSIX shell(/bin/sh)中创建一个临时文件. 我发现mktemp(1)在我的AIX盒子上不存在,并且根据如何便携是mktemp(1)吗?,那不是便携性和/或安全性. 那么,我应该改用什么呢? 解决方案 为什么不使用/dev/random? 使用perl可能会更整洁,但是od和awk可以,例如: tempfile=XXX-$(od -N4 -tu ..
发布时间:2020-05-29 01:44:43 其他开发

可移植的C二进制序列化原语

据我所知,C库在将数值序列化为非文本字节流方面没有任何帮助.如果我错了,请纠正我. 使用中最标准的工具是POSIX中的 htonl 等.这些功能有缺点: 不支持64位. 没有浮点支持. 没有用于签名类型的版本.反序列化时,无符号到有符号的转换依赖于有符号整数溢出,即UB. 他们的名字没有说明数据类型的大小. 它们取决于8位字节以及确切大小的uint_ N _t的存在. 输入类 ..
发布时间:2020-05-29 01:44:40 其他开发

将C ++编译为可移植的Linux二进制文件

好吧,这个问题是关于便携式的,例如没有依赖项(例如,“我可以将二进制文件放入USB密钥中,并随身携带它,电子邮件,他们给朋友等". 我听说过静态链接,但是我对它的确切后果感到困惑;哪些可以静态链接,哪些不能静态链接(即Qt,OpenGL,libstdc ++呢?),然后二进制将在多大程度上“可移植"呢? 我也听说过 LSB (Linux标准库),但是我不知道它到底是什么,或者在这种意义 ..
发布时间:2020-05-29 01:44:38 C/C++开发

如何在通用标头中typedef实现定义的结构?

我有一个C项目,旨在将其移植到各种(PC和嵌入式)平台上. 应用程序代码将使用各种调用,这些调用将具有特定于平台的实现,但共享一个通用的(通用)API以帮助实现可移植性.我正在尝试确定最合适的方法来声明函数原型和结构. 这是到目前为止我要提出的: main.c: #include "generic.h" int main (int argc, char *argv[]) ..
发布时间:2020-05-29 01:44:35 其他开发

PE基础迁移如何建立?

我目前在了解如何建立PE Base重定位方面遇到困难. 我知道可能会有一个以上的重定位,我也知道为什么这样做以及如何进行,但我只是不以编程方式了解它: 以下哪一项是正确的(在WinNT.h中为IMAGE_BASE_RELOCATION)? // Base relocation #1 DWORD VirtualAddress; DWORD SizeOfBlock; // s ..
发布时间:2020-05-29 01:44:32 其他开发

设置RStudio Portable默认R版本

我最近发现了R和RStudio的便携式版本@ http://rportable.sourceforge.net/ 开源之石! 无论如何,我在大学里从一台PC跳到另一台PC,我想让Portable R-studio将Portable R识别为默认R版本.该大学的大多数计算机已经安装了多个r版本,并且RStudio使用R的其中一个版本.当我进入“全局选项"以更改默认版本时,它不会在U ..
发布时间:2020-05-29 01:44:29 其他开发

使用免费工具开发轻量级(无运行时)基于Windows的GUI应用程序

有人知道支持Windows平台上GUI应用程序开发的免费工具(语言,环境)吗? 我希望能够创建一个不依赖任何外部运行时或库的可执行文件. 我希望能够以与Process Explorer或SysInternals的自动运行非常相似的方式运行此EXE.换一种说法;没有安装程序的可移植应用程序. 此应用程序还必须提供相当丰富的窗口(控件,小部件等)用户界面,并且应在Windows 20 ..

防止MSYS'bash'杀死捕获^ C的进程

我有一个控制台模式的Windows应用程序(从Unix移植),最初设计为在收到 ^ C (Unix SIGINT)时执行干净退出.在这种情况下,干净的退出可能需要等待很长一段时间才能关闭远程网络连接. (我知道这不是 ^ C 的正常行为,但是我无法更改它.)该程序是单线程的. 我可以使用signal(SIGINT)(在Unix下)或人们很可能希望在MSYS bash下运行该程序.而且,这种效 ..
发布时间:2020-05-29 01:44:22 其他开发

如何以编程方式确定是否“写入"数据?系统调用在特定文件上是原子的?

在某些情况下,编码人员不能依赖于原子的系统调用,例如如果文件在NFS文件系统上. (参见 NFS概述,常见问题解答和HOWTO文档).但是,大多数数据库工作最终都需要原子系统调用. (请参见数据库系统的原子性). 在C(或python)中的特定FILE上是否存在一种标准的(且与操作系统无关的)确认写入(和其他系统调用)是原子的方式. 有什么建议吗? 后续注释:管道的原子性将在下面 ..
发布时间:2020-05-29 01:44:15 Python

达尔文/MacOS会修改Bash吗?

我想知道使用Bash内置命令的Bash脚本的可移植性. 我了解UNIX的每种形式都倾向于修改各种UNIX实用程序.但是他们倾向于不理会Bash和Bash的内置功能吗?尤其是MacOS呢? 解决方案 据我所知,bash在Mac OS X上未经修改(除了需要对其进行细微调整外,您还可以在 http://opensource.apple.com/),脚本应该具有很好的可移植性. 如G ..
发布时间:2020-05-29 01:44:13 其他开发

汇编程序可以在Linux发行版之间移植吗?

程序是否可以以汇编程序格式在Linux发行版之间移植(CPU架构差异较大)? 这是我提出问题的背景:我正在研究一种新的编程语言(称为Aklo),其编程方式将是经典的编译为.s并将结果提供给GNU汇编器的方法. 很显然,最终由自己编写实现会很好,但是我已经辞职了,用C ++维护它来解决鸡和蛋的问题:假设您是第一次下载编译器,它本身是用C编写的Aklo,您如何编译它?据我了解,不同的Lin ..
发布时间:2020-05-29 01:44:11 服务器开发

Mac和Windows的Python兼容GUI,易于安装并与pygame一起使用吗?

我制作了一个程序,可以在图像中发现并测量酵母菌落的半径.它使用pygame进行像素访问和图像的图形显示. 下一步是使其“用户友好",以便我大学生物实验室的非程序员可以使用它. Pygame缺少我需要的滚动条,文本字段,“打开文件"对话框等.我听说尝试将pygame和Tkinter混合使用是一场噩梦.我该怎么用? 另一个要求是,我希望在Windows和Mac上易于设置Python和所有必 ..
发布时间:2020-05-29 01:44:09 Python

如何在Shell中以可移植的方式在第一个空行上分割文件(例如使用sed)?

我想将包含HTTP响应的文件拆分为两个文件:一个仅包含HTTP标头,另一个包含消息正文.为此,我需要使用 shell脚本在第一个空行(或者对于仅包含CR ='\r'字符的第一行的UNIX工具)中将文件分成两部分. 如何以可移植的方式执行此操作(例如,使用 sed ,但没有GNU扩展名)?可以假定空行不是文件中的第一行.空行可以到达一个或两个文件,或者两个文件都不行.对我来说没关系. 解 ..
发布时间:2020-05-29 01:44:05 其他开发

Doctest由于Unicode导致失败

我正在为输出标记词列表的函数编写doctest. r''' >>> s = "This is a tokenized sentence s\u00f3" >>> tokenizer.tokenize(s0) ['This', 'is', 'a', 'tokenized', 'sentence', 'só'] ''' 使用 Python3.4 ,我的测试顺利通过. 使用 Pyth ..
发布时间:2020-05-29 01:44:03 Python

一段代码被认为是可移植的,这意味着什么?

我在许多文档中都看到一段代码是可移植的. 任何人都可以向我解释确切地是什么意思将一段代码称为可移植的吗? 解决方案 可移植代码是未紧密耦合到一个特定平台的代码,或者是尽可能宽松地耦合至特定于平台的API的代码.之所以“便携",是因为将其从一个平台迁移到另一个平台所需的工作量很少. 当您打算在各种平台上编写供大量读者使用的代码时,可移植代码是可取的. 可移植性在编译语言中主 ..
发布时间:2020-05-29 01:43:57 其他开发

跨系统和版本的Java伪随机数的可重现性?

给定一个初始整数参数,我需要生成一个受控的伪随机数序列.为此,我使用标准的Java随机类,该类由整数参数设定.我想确保在可预见的将来(甚至更多),我将在系统(操作系统,还有Java/JDK版本)中生成相同的序列. 总结:Java是否可以确保其实现和版本之间的伪随机数生成器的可重复性/可移植性? 注意:我已经问过完全一样Python问题.此后,由于其他原因,我将实现语言更改为Java. ..
发布时间:2020-05-29 01:43:53 Java开发

如何以可移植的方式在Perl中获得当前用户?

如何以一种可移植的方式吸引当前用户? 这似乎是一个常见问题解答,但 perlport 并未提及,也许是因为有些奇怪系统没有“用户"的概念吗?但是,让我们坚持使用* nix和Windows. getpwuid($>)在Windows上未实现. $ENV{USER} || $ENV{USERNAME}似乎很挑剔. http://search.cpan.org 出现的次数很少. ..
发布时间:2020-05-29 01:43:50 其他开发

有便携式Perl吗?

是否存在与可移植Python相似的可移植Perl?我可以在拇指驱动器上使用一些东西(在学习这些东西的同时)? 哦,我说的是Window XP. 解决方案 我可以衷心推荐草莓Perl . 便携式版本位于Beta(尽管Beta的真实含义)上,请单击在这里获取它. 编辑:可移植版本已经过测试版(已经几个月了),请在此处进行检查. ..
发布时间:2020-05-29 01:43:46 其他开发

便携式轻量级C ++套接字包装器

我真的以为这会更容易找到... 我需要一个便携式c ++套接字包装器.我打算将其用于Windows Server应用程序和将在运行ulinux(或类似功能)的嵌入式设备上运行的客户端.我会使用Boost,但我需要它轻巧并且易于添加到嵌入式设备项目中. 我也希望它是一个“高级"包装器...因此它启动了一个后台线程来读取数据并通过回调通知... 有什么想法吗? 解决方案 只需 ..
发布时间:2020-05-29 01:43:44 C/C++开发