問題タブ [conan]
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++11 - boost::filesystem::current_path() は空のパスを返します
後でフォルダーを作成するために現在のパスが必要な C++ プログラムがあります。私の実行可能ファイルの場所は、たとえば/home/me/foo/bin. これは私が実行するものです:
パッケージマネージャーConanでインストールされたBoost 1.66を使用して、Ubuntu 16.04で実行しています。
Conanを使用せずに、以前のバージョンのBoost(1.45だと思います)でこれを正常に実行していました。Boostは私のマシンに正常にインストールされました。を実行するとコア ダンプが表示されるようになりましたcreate_directories( boostPath);。
2 つの質問:
current_path()実際のパスを提供せず、代わりにリターンと空のパスを提供しないのはなぜですか?- current_path() が何も返さなかったとしても、なぜ実行してもコア ダンプが残るのでしょう
sudoか? ルートにフォルダを作成するだけではないでしょうか?
編集:
コンパイルされたプログラムを実行し、coutデバッグ モードを使用するのではなく、行間に上記の変数の出力をいくつか入れると、通常、次の出力が得られます。
しかし、時々 (時間の約 20%)、次の出力が得られます。
編集2:
実行すると、次のconan profile show defaultようになります。