問題タブ [portability]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
361 参照

c - Unix/C におけるデータベースの独立性

Sybase CT ライブラリを使用して Sybase データベースにアクセスする、C で記述され、Solaris および Linux で実行されるシステムがあります。作業量とエラーを削減するために、社内で開発された DDL からテーブル定義、インデックス、ストアド プロシージャ、および C コードを生成します。

データベースの独立性を実現したいので、(最初の開始として) Oracle サポートを追加できます。

ODBC または ESQL/C について考えていますが、経験がありません。

どのような解決策を提案しますか (もちろん、安価で簡単な解決策が望ましいです)。単一のソース ソリューションを持つことは可能ですか?

0 投票する
6 に答える
44426 参照

c++ - #warningプリプロセッサディレクティブの移植性

#warningディレクティブが標準のC /C ++ではないことは知っていますが、gcc /g++を含むいくつかのコンパイラがそれをサポートしています。しかし、それをサポートしていない人にとって、彼らはそれを黙って無視するのでしょうか、それともコンパイルの失敗につながるのでしょうか?言い換えれば、それをサポートしていないコンパイラのビルドを壊すことなく、プロジェクトで安全に使用できますか?

0 投票する
11 に答える
48660 参照

c++ - DebugBreak()/__debugbreak に相当するポータブルなものはありますか?

MSVC では、DebugBreak()または__debugbreakによってデバッガーが中断されます。x86 では "_asm int 3" を書くのと同じですが、x64 では何か違います。gcc (またはその他の標準コンパイラ) でコンパイルするときは、デバッガーも中断したいと考えています。プラットフォームに依存しない関数または組み込み関数はありますか? それについてのXCode の質問を見ましたが、移植性が十分ではないようです。

サイドノート: 私は主にそれで ASSERT を実装したいと思っています。そのために assert() を使用できることは理解していますが、DEBUG_BREAK などをコードに書きたいと思っています。

0 投票する
7 に答える
4109 参照

javascript - Javascript でデスクトップ OSX または Windows アプリを作成したいのですが、経験はありますか?

Windows と OSX 用の小さなアプリケーションを書きたいと思っています。

携帯性は良好です。たとえば、TCL 用の単純な TclKit ソリューションは、Tcl をしばらく見続けることができればうまく機能します。

私はJavascript +拡張機能の使用を検討しています-私はJavascriptが本当に好きです-JavascriptエンジンをWxWinまたはTkツールセットに接続する方法があるはずです-Perl、Python、Rubyなどで行われています.なぜJSではないのですか?

コメントをお待ちしております。

0 投票する
4 に答える
784 参照

c - **ポータブル C** で、コマンドの stdin をランチャーの stdout に接続するコマンドを起動する方法は?

C プログラム (p1) で、p1 の標準出力から標準入力を読み取る、動的に構築されたコマンド (およびその引数) を起動する方法は?

ご了承ください:

  1. この stdout --> stdin パイピング以外の方法も、Windowsと Linux 間で移植可能であればOK です。

  2. ここでは C++、Java、Perl、Ruby、Python などは使用できません。

また、これには Windows ビルドの MinGW 依存関係がありますか?

REOPENED : 以下の質問は Linux の場合の回答ですが、この質問は移植可能な方法が必要です。 C プログラム内からプログラムを実行する

0 投票する
1 に答える
7139 参照

c - GCCには固定サイズの整数がありますか?

MSVC++ コンパイラでは、特定のサイズの整数に対して__int8__int16、および同様の型を使用できます。__int32これは、カスタム ファイル形式、ハードウェア制御データ構造などの低レベル データ構造を扱う必要があるアプリケーションに非常に役立ちます。

GCC コンパイラで使用できる同等のものはありますか?

0 投票する
1 に答える
616 参照

c++ - ポータブル アプリでの Windows DLL の使用

Linux に移植したい Windows C++ アプリケーションを作成しました。これを行う主な理由は、IT スタッフのシステム保守の容易さです。このアプリケーションを実行する 1 台の Windows マシンを除けば、Linux のみの運用です。

このアプリケーションが Windows に組み込まれ、Windows で実行される理由は、Windows API (dll とヘッダー) を使用して外部パーティに属するサーバーに接続するためです。この接続は、私が本当にいじりたくない独自のプロトコルを使用しているため (契約上許可されていないと思います)、.dll にこだわっています。

この dll は、Windows ソケット固有のコードが dll に含まれているため (私は疑っています)、Windows のみです。それとは別に、高度なことはあまりしません。このアプリケーションを Linux マシンで実行できるようにするために、WINE の Linux でアプリを実行するだけでなく、プロトコルを盗聴して DLL を自分で再実装する方法はありますか?

このアイデアは、QT クリエーターに関するこの項目に触発されたので、それで遊ぶことができるソリューションは非常にクールです。

0 投票する
7 に答える
631 参照

windows - ファイルパスの移植性

*nix と Windows で実行する必要があるプログラムがあります。\プログラムはファイルからファイルパスを取得するため、問題はvsの問題をどうするかです/

私の現在の考えは、私が使用しているシステムに応じて、間違ったものを正しいものに変換する正規表現を入れることです。これにより、どちらのタイプもどちらのシステムでも機能するようになります。現在、私には 2 つの問題があるという事実以外に、他に何か問題が見られる人はいますか?

(他のより良い解決策は大歓迎です)

編集: 主な問題は、その逆ではなく、Windows パスを UNIX で動作させることです。

0 投票する
6 に答える
847 参照

c++ - パフォーマンスの低下を最小限に抑えて C & C++ ライブラリを同期する方法は?

ベクトル、行列、四元数などを処理するための多数の数学ルーチンを備えた C ライブラリがあります。組み込み作業や Lua 拡張としてよく使用するため、C のままにしておく必要があります。さらに、より便利なオブジェクト管理と、C API を使用した数学演算の演算子のオーバーロードを可能にする C++ クラス ラッパーがあります。ラッパーはヘッダー ファイルのみで構成され、インライン化が可能な限り使用されます。

C コードをラップすることと、実装を C++ クラスに直接移植してインライン化することとの間に、かなりのペナルティがありますか? このライブラリは、タイム クリティカルなアプリケーションで使用されます。では、インダイレクションを排除することによるブーストは、2 つのポートのメンテナンスの頭痛の種を補うのでしょうか?

C インターフェイスの例:

C++ ラッパーの例:

0 投票する
4 に答える
644 参照

java - 混在する Java バージョンの世界でジェネリックを使用する方法は?

私はジェネリックが大好きで、できる限りジェネリックを使用しています。時々、古いJVM(5.0より前)で実行する必要がある別のプロジェクトでクラスの1つを使用する必要があり、JavaME(ジェネリックも許可されていない)またはMicrosoft J#(非常に貧弱です)で実行する必要がありますジェネリックのサポート)。

現時点では、すべてのジェネリックを手動で削除しています。つまり、多くのキャストも挿入しています。

ジェネリックはコンパイル時のみであると言われ、ジェネリック コードのすべての部分が非ジェネリック コードに自動的に変換される可能性があるため、これを実行できるツールがあるかどうか疑問に思います。

そのようなツールがない場合、他にどのように問題を解決できますか? ジェネリックの使用を完全にやめるべきですか?

バイトコードの互換性に関する回答は既にあります。何らかの理由でソース コードの互換性が必要な場合はどうすればよいですか?