首页 > TAG信息列表 > portability

c-LSB AppChecker:GCC链接未使用的库

我正在使用LSB AppChecker检查共享对象(.so)的可移植性. 它报告的问题之一是,有一个外部库(libm.so.6)未被使用,但无论如何都被链接在一起. 如何防止GCC链接到此不需要的库? 编辑:针对我的共享对象的ldd命令的输出为: linux-gate.so.1 => (0x009ff000) libstdc++.so.6 => /u

java-SQLite操作系统抽象层?

有些人想将我的Android开源软件移植到Blackberry和PC(也使用SQLite). 我将UI代码与域/数据库代码分开.但是下一个问题是,域/数据库代码包含如下所示的导入: import android.database.Cursor; …这使其无法携带. 我想许多其他开发人员也有同样的问题,因此必须在某个地方存在一个SQL

c#-无法引用UWP Windows.Devices.Portable

在我的UWP应用中,我试图访问便携式设备(MTP,PTP)存储. 在以下问题中,OP使用了Windows.Devices.Portable命名空间,没有出现问题. Here. 但就我而言: Windows.Devices不包含Portable类解决方法:我设法弄清楚了.命名空间Windows.Devices.Portable位于UWP的Windows桌面扩展中. 因此,您

如果Python可用,则有选择地启用测试程序-automake

我有一个用C编写的程序,使用automake / autoconf构建,并且具有两个测试套件.一个是也用C编写的单元测试套件.另一个是端到端的(当前)是用Python编写的.我希望“ make check”始终运行单元测试,并且仅当安装了Python时才进行端到端测试.这就是我现在所拥有的: TESTS = unittests if

C#/ Java可移植性

您将选择哪些主流框架,模式和工具来并行开发两个项目,一个使用C#,一个使用Java,以最大程度地减少工作量. (忽略明显的可互换工具或等效工具(例如SCC,单元测试等)的情况.还要假定通用的RDBMS广泛支持.) “主流”意味着市场通常不会忽略结果,因为它使用了他们从未听说过的未经测试的

c – std :: namespace中的isnan是什么?更一般地说,什么时候std ::必要,可选或者要避免?

使用Mingw 4.7.2,我有一个因为调用isnan而无法编译的库. 如果我使用std :: isnan,编译器会说“一切都会好的”,而且我确实设法编译了我的文件. 但是,如果我检查here(编辑:但也许我应该检查here :-)),std ::似乎没有必要.如果我添加它,该文件是否可移植? 更一般地说,对于每种情况都有

如何设计一个可以在许多客户端语言中使用的C/C++库?

我打算编写一个应该可以被广泛的平台上的大量人使用的库.我需要考虑什么来设计它?为了使这个问题更具体,最后有四个“子问题”. 选择语言 考虑到所有已知的要求和细节,我得出结论,用C或C编写的库是可行的方法.我认为我的库的主要用途是在用C,C和Java SE编写的程序中,但我也可以考虑

c – 在任何操作系统上IEEE的浮点数和双倍数都保证相同吗?

我正在研究OS便携式数据库系统.我希望我们的数据库文件是可移植的操作系统,以便客户可以自行决定将其数据库文件移动到其他类型的操作系统.由于这个用例,我需要我的数据类型在OS之间保持一致,我想知道IEEE浮点数和双数字是否保证在任何操作系统上都是相同的字节大小?解决方法:C几乎

保证python标准库的哪些部分可用?

我很想知道python标准库的哪些部分绝对可以保证可用,哪些部分可能没有安装,取决于分发. 我见过this question,但它并没有提供我正在寻找的答案. 我知道these modules并不总是可用而且the math module always is.其他模块怎么样?除了数学之外是否有任何模块可以保证可用? 编辑:the sys

基于类型的C类包装器

我见过/使用的许多库都有typedef来提供可移植的,固定大小的变量,例如int8,uint8,int16,uint16等,无论平台如何都是正确的大小(并且c 11本身使用头文件stdint.h) 最近在我正在编写的小型库中使用二进制文件i / o后,我可以看到以这种方式使用typedef以确保代码可移植的好处. 但是,如

c – 从4个复合字节中构建一个32位浮点数

我正在尝试用4个复合字节构建一个32位浮点数.有没有比使用以下方法更好(或更便携)的方法? #include <iostream> typedef unsigned char uchar; float bytesToFloat(uchar b0, uchar b1, uchar b2, uchar b3) { float output; *((uchar*)(&output) + 3) = b0; *((uch

c – 多字符恒定警告

为什么这是一个警告?我认为在很多情况下使用multi-char int常量而不是“无意义”数字或者使用相同值定义const变量更为明确.解析wave / tiff /其他文件类型时,可以更清楚地将读取值与某些“EVAW”,“数据”等进行比较,而不是相应的值. 示例代码: int waveHeader = 'EVAW'; 为什么这

c – 用于发现64位可移植性问题的静态代码分析工具?

我正在寻找将大量代码转换为64位的最佳方法.有人建议我研究一些静态代码分析工具,比如cpptest来发现可移植性问题.有没有人对我有什么建议可以使用?或者将代码移植到64位的有效方法? 环境:windows,vs2008(我知道VS中的“检测64位可移植性问题”选项,但我需要更好). 例如:一个可以获得这

c – portable __attribute __((__ packed__))

是否存在__attribute __((__ package___))的可移植等效项 (通过便携性,我的意思是在PC,Android和iPhone上工作,无论架构如何)解决方法:根据定义,__ attribute__s是不可移植的.如果您希望数据以特定方式使用,Plan9解决方案通常在结构中使用unsigned char数组: struct foo { ucha

c – 使用boost :: program_options的首选跨平台“主要”定义是什么?

我正在尝试使用C和boost来开发跨平台应用程序. 我通常在* nix环境中编程,我总是在其中定义’main’,如下所示: int main( const int argc, const char* argv[] ) { ... } 对于这个应用程序,我使用Visual Studio 2003开始在Windows环境中. 当我尝试使用带有此定义的boost :: progra

可以在C中以可移植的方式使用命名属性初始化POD结构吗?

我试图以与GCC 4.3.4和Clang 2.9兼容的方式使用命名属性初始化结构. struct A { unsigned int x; }; // GCC: error: expected primary-expression before '.' token A a = { .x = 0xdeadbeef; }; // Clang: error: use of GNU old-style field designator extension [-Werr

Java的%运算符是否会溢出?

在C和C中,根据Shafik’s post,INT_MIN%-1的行为似乎是未定义/平台相关的. 在Java中,%运算符是否会溢出? 考虑一下这段代码: public class Test { public static void main(String[] args) { // setup variables: byte b = Byte.MIN_VALUE % (-1); short s

如果不使用strictfp,代码是否会变得不合规?

我们进行了第一次代码审计,有人告诉我,不使用strictfp进行浮点运算可能会让我们被标记.软件在Windows机器上编码并部署到Solaris机器以供生产使用.有关它的任何建议是真的吗? 另外,如果不使用’strictfp`可以使浮点算术代码不兼容或不可移植,为什么还要以非严格的方式进行计算呢? CER

哪些unix发行版是作为默认安装的一部分安装的Python?

有没有人知道概述哪些(最近的)UNIX发行版默认情况下Python可用,即默认安装的一部分? PS:来自StackOverflow的答案,在问题移到此处之前: >对于所有Unix操作系统都不知道,但对于Linux,您可以随时查看distrowatch.org.但这不是发布此类问题的合适网站:请将此文件移至unix.stackexchange.co

建议:c中的异步,可移植文件io

我正在寻找一个兼容unix和windows系统的C,async io库. 什么是好的图书馆?对于同时执行这两个系统的库,这是否要求太多?人们对此事的经历是什么?解决方法:使用boost::asio和boost::iostreams而不是asio流. ASIO提供异步,而IOStream则提供强大的可移植IO选项.

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

汇编程序格式的程序是否可以在Linux发行版之间移植(模块化CPU架构差异)? 这是我的问题的背景:我正在研究一种新的编程语言(名为Aklo),其运作方式将是经典编译为.s并将结果提供给GNU汇编程序. 显然最终会有自己编写的实现很好,但是我已经辞职了,在C中维护它以解决鸡和蛋问题:假设你是第

Python:import _io

我正在尝试确定Python库中哪些文件是我的脚本运行所必需的.现在我正在尝试确定_io.py的位置.在io.py(无下划线)中,_io.py模块(带下划线)在第60行导入.解决方法:有些模块直接编译到解释器中 – 没有与之对应的文件.您可以从sys.builtin_module_names检索这些模块的列表.在我的Pyton

C中的便携式精密双精度时间戳?

这是我需要做的事情: double now=getdoubletimestampsomehow(); 其中getdoubletimestampsomehow()应该是一个简单易用的函数,返回一个double值,表示从给定日期开始经过的秒数.我需要它非常精确,但我并不需要它比几毫秒更精确.可移植性非常重要,如果无法将其直接移植到任何地方,请

C写入和读取从二进制文件加倍

我想为占用太多RAM的程序执行磁盘I / O操作. 我使用双精度矩阵并考虑将它们写入磁盘,因为字节是最快的方式(我需要保持双精度). 如何做到便携? 我发现这个代码(here),但作者说它不便携…… #include <iostream> #include <fstream> int main() { using namespace std; of

c – 协议缓冲区和UTF-8

编码方案/多个操作系统和字节序的历史导致编码所有形式的字符串数据( – 即所有字母表)的混乱;因此协议缓冲区只在其字符串类型中处理ASCII或UTF-8,我看不到任何接受C wstring的多态重载.那么问题是如何期望将UTF-16字符串放入协议缓冲区? 据推测,我需要将数据保存为应用程序代码中