問題タブ [header-only]
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.
c++ - CLion では、ヘッダーのみのライブラリ: ファイルは「どのプロジェクト ターゲットにも属していないため、コード インサイト機能が正しく動作しない可能性があります」
cmake コマンドでセットアップされたヘッダーのみのライブラリ プロジェクトがあります。
そして私も追加しました
しかし、ソース ファイルを開くと、次の警告が表示されます。
このファイルはどのプロジェクト ターゲットにも属していません。コード インサイト機能が正しく動作しない可能性があります
コード補完などの多くの機能を失います。
CLion がヘッダーのみのライブラリで通常の機能を提供するように、これを設定する適切な方法は何ですか?
c++ - QObject を継承するヘッダーのみのオブジェクトを自動モックできますか?
私は Qt に比較的慣れていませんが、Qt をプロジェクトに組み込んでいます。タイマーで使用する QObject を継承する非常に小さなオブジェクトを作成しました。そのためのヘッダーのみのファイルを作成しましたが、コンパイラーがすぐに気に入らないことに気付きました。そこで、エラーを取り除くために無料の .cpp ファイルを作成しましたが、うまくいくようでした。
私の質問は本当に、QObject を継承するヘッダーのみのオブジェクトを作成し、自動モック化できるようにすることはできますか? または、無料の cpp ファイルを毎回作成する必要がありますか?
複製するコードを少量生成しましたが、これは私の言いたいことを示しています。
CMakeLists.txt
メイン.cpp
Header.h
出力
もちろん、このHeader.cppをソースに追加すると、エラーが解消されます。
c++ - ヘッダーのみのライブラリを使用した Cpp コンパイル手法
ヘッダーのみのライブラリ (tiny-dnn) を含むプロジェクトをコンパイルすると、使用可能なメモリが (12GB から) ゼロになることに気付きました。これに続いて、システムがフリーズします。これは主に、コンパイル エラーまたはリンカー エラー (特にリンカー エラー) が発生した場合に発生するようです。これは、スワップのオンまたはオフで発生します。
メモリをより効率的に使用する方法や、再帰を少なくする方法などはありますか?
ubuntu14.04のgcc7 +デフォルトリンカー(チェックしていませんが、明日)とCMake + Ninjaビルドツールを使用しています。使用する便利なコンパイルまたはリンク フラグがいくつかあるのではないでしょうか。この時点で最低限のものを使用していると仮定します。おそらく、clang コンパイラまたはゴールド リンカーに切り替えると役立つでしょうか?
cmake - CMake:同じライブラリの複数のバージョンを処理するには?
私のプロジェクトでは、ヘッダーのみのライブラリrapidjson v1.1.0を使用しています。
問題は、tiny-dnnにも rapidjson (ただし古いバージョン) が含まれているため、メインの CMakeLists.txt に tiny_dnn を含めようとしているときに、include_directories(${PROJECT_SOURCE_DIR}/3rdParty/tiny_dnn)
tiny-dnn での検索、rapidjson での検索、またはプロジェクトでの tiny での検索のいずれかから競合が発生することです。 -dnnのrapidjson。
my_project CMakeLists.txt
my_project.cpp