c++

マイログファイルを含むディレクトリの名前変更を検出する
c++

マイログファイルを含むディレクトリの名前変更を検出する

メッセージをファイルに書き込む C++ プログラムがあります。場合によっては、このログファイルを含むディレクトリの名前が変更または削除され、同じ名前のフォルダが再作成されます。 デーモンは、このようなことが発生していることをどのように検出してログを再度開くことができますか?つまり、私はinotifyを使用しています(またはより一般的には次のようにこれを行うことができることを知っています)。無料イベント)、しかしもっと簡単なことがありますか? 私たちのPythonプログラムは以下を使用しますlogging.handlers.WatchFileHandler()...

Admin

sudoを使用してプログラムでコマンドを実行する
c++

sudoを使用してプログラムでコマンドを実行する

出力を実行して印刷するC ++ qtプログラム(test_program参照しやすいように呼び出す)があります。sudo lsblkpopen Qtアプリケーション内で実行するとtest_program(Qtアプリケーション自体はを使用して開始されますsudo)、印刷された出力を表示できます。 しかし、test_program印刷出力などのqtアプリケーションを使用して生成されたバイナリでsudo test_program実行すると、sudo lsblk sudo: account validation failure, is your account lo...

Admin

libmm dbusプロキシAPIをエミュレートする方法
c++

libmm dbusプロキシAPIをエミュレートする方法

DBUS プロキシ API を使用してcall_syncDBUS からデータを読み込んでおり、今度は単体テストを追加し、そのモックを作成しました。 コードは次のとおりです。 class MockDBusProxy : public IDBusProxy { public: MOCK_METHOD(Glib::VariantContainerBase, callDBusMethod, (const Glib::ustring& busName, const Glib::ustring& objectPat...

Admin

共有ライブラリの読み込みエラー:libboost_system.so.1.55.0:共有オブジェクトファイルを開くことができません。そのファイルまたはディレクトリはありません。
c++

共有ライブラリの読み込みエラー:libboost_system.so.1.55.0:共有オブジェクトファイルを開くことができません。そのファイルまたはディレクトリはありません。

Raspberry 2で実行するように2016年に作成されたソフトウェアをRaspberry 5に移行したいと思います。この移行中にすべてのファイルをRP5にコピーしました。しかし、RP5で実行すると、localhostを介してスクリーンショットを撮っても「gateway」というファイルを実行できないため、他のコードは機能しません。ゲートウェイファイルは実行ファイルです。下の図に示すように、ゲートウェイに必要なライブラリが作成されました。現在経験している問題は、RP5にlibboost_system.so.1.55.0というライブラリをインストールした...

Admin

アプリケーションで使用されるAPI呼び出しの検出
c++

アプリケーションで使用されるAPI呼び出しの検出

Linux で独自の C++ アプリケーションを実行し、ここに宣伝された機能以外の機能が含まれているかどうかを知る必要があります。 アプリケーションが実行したすべてのAPI呼び出しを一覧表示する方法はありますか(Linuxシステム呼び出しを使用せずに標準のstdc ++関数のみを使用すると仮定します)。 似たような質問私は約10年前に質問を受けましたが、その答えはまったく満足できませんでした。完全に自動化されたものが必要です。 ...

Admin

実行ファイルが1回実行されず、連続して2回実行された場合、コア間の待ち時間がランダムであるのはなぜですか?
c++

実行ファイルが1回実行されず、連続して2回実行された場合、コア間の待ち時間がランダムであるのはなぜですか?

良いコア相関を見つけるために、サーバーはコア間の待ち時間をベンチマークしています。 両方のスレッドのコアアフィニティを異なるCPUに設定し、スレッド間のメッセージ待ち時間を計算しようとしています。メッセージはを介して転送されますstd::atomic。実行時間は次のように計算されます。https://github.com/fuatu/core-latency-atomic 割り当てによるコアアフィニティ(POSIX) void set_affinity(long cpu_num) { cpu_set_t cpuset; CPU_ZERO(&c...

Admin

make: *** 'mykernel.bin' ターゲットを生成するルールはありません。止める
c++

make: *** 'mykernel.bin' ターゲットを生成するルールはありません。止める

私はOSで作業していますが、makefile.winでこのエラーが発生します。 linker.ld出力ファイルが、私が作成しているファイル(mykernel.bin)の命名規則と一致しないようです。これがエラーの原因であるかどうかはわかりません。これは64ビットシステム用に構築されています。 file.winの生成 ASPARAMS = LDPARAMS = -melf_x86_64 objects = loader.o kernel.o %.o: %.cpp g++ $(GPPPARAMS) -o $@ -c $< %.o: %.s ...

Admin

QNXでWebAssemblyを使用できますか?
c++

QNXでWebAssemblyを使用できますか?

WebAssemblyベースのWebアプリケーションをQNXに移植できるかどうかを調べたいと思います。しかし、QN​​Xバージョンに付属しているブラウザとWebエンジンライブラリのバージョン、およびそれらがサポートする機能に関する情報を見つけることは困難です。 SDP 7.x(QNX 7およびCAR 3で動作すると思いますか?)は、Blinkエンジン(QNX 6で使用されているWebキットlibの代わりに)ベースの最新のブラウザに付属しているようです。 V8 JavaScriptエンジンを使用してください。 ネットワーク組立サポート それでは、ブラウザ自体が...

Admin

Linuxでキーボード修飾子の物理状態を読みます(CまたはC ++を使用することをお勧めします)。
c++

Linuxでキーボード修飾子の物理状態を読みます(CまたはC ++を使用することをお勧めします)。

プログラムで情報を読み、検出または取得する方法はありますか?実際の物理状態修飾キー、ルートレベルのアクセスは必要ありません。右? X11、XCB、およびXKBを試してみましたが、対応するイベントベースの方法は、修飾キーが物理的に解放されたか、別の方法で使用された後にのみ、修飾キーの変更を登録します(マウスクリック中など)。 SHIFT次の「消費」イベントが発生するのを待たずに、キーを押す/解除する状態などを非同期的に読み取る方法を探しています。 X11/XCB/XKBがこれを許可しない場合は、HID方向に行くことも考慮するでしょうが、そうする前に非ブロック修...

Admin

私はカスタム共有オブジェクトにアクセスしようとしましたが、権限が拒否されました。
c++

私はカスタム共有オブジェクトにアクセスしようとしましたが、権限が拒否されました。

g++を使用してデフォルトのC ++共有オブジェクトファイルを作成しました。 // calculate.hpp #ifdef __cplusplus extern "C" { #endif // typedef struct ...; // function decls int Add(int x, int y); #ifdef __cplusplus } #endif 以下を実装する C++ ファイルを使用します。 // calculate.cpp #include <iostream> #include "calcu...

Admin

Debian に Boost.CRC ライブラリをインストールする方法
c++

Debian に Boost.CRC ライブラリをインストールする方法

Debian 11.7 に Boost CRC ライブラリをインストールする必要があります。 Synaptic Package Managerで検索しましたが、見つかりませんでした。 また、可能であれば、追加のBoostパッケージとライブラリを必要とせずに、特定のライブラリのみ(最小構成で)インストールすることをお勧めします。 ...

Admin

Debian で実行されているカスタムアプリケーションと ArchLinux でコンパイルされた qpidd 間の接続の問題
c++

Debian で実行されているカスタムアプリケーションと ArchLinux でコンパイルされた qpidd 間の接続の問題

カスタムアプリケーションがありますqpidd(Qpid バージョン 1.36)アーチLinux。実行中のqpiddに接続するためのプロトコルとして、デフォルト設定を含むデフォルトTCPを使用し、接続は問題なく毎回確立されます。アーチLinux。しかし、Debianでテストする必要があります。これを行うには、必要なすべての低レベル関連の.soファイル(ld-linux-x86-64、libc、libm、libgcc_sなど)と他の.soファイル(含まれています)をコピーしました。Qpid- 関連)PCへダーバン。もちろん、両方のアプリケーションなどのRPATH...

Admin