パソコンでプログラミングしよう ウィンドウズC++プログラミング環境の構築
1.8.2.5(4)
本サイトは移転しました。旧アドレスからのリダイレクトは2025年03月31日(月)まで有効です。
🛈
サイトバージョン1.8.X.X

サイトバージョン1.8.X.Xの導入ソフトウェアバージョンを示し、サイト記述の変更をまとめる。

導入ソフトウェアバージョン

2025年01月27日確認。

導入 ソフトウェア バージョン ステータス
MSYS2 MSYS2ランタイム 3.5.4-8 更新
mingw-w64コンパイラ(32ビット) 14.2.0-2 更新
mingw-w64コンパイラ(64ビット) 14.2.0-2 更新
boostライブラリ 1.87.0-2 更新
wxWidgetsライブラリ 3.0.5.1-16 -
Doxygen 1.13.1-2 更新
Graphviz 12.2.1-1 更新
GIMP 3.0.0RC2-1 更新
インストーラ Code::Blocks 20.03 -
Git for Windows 2.47.1.2 更新
Sourcetree 3.4.21 更新
Poedit 3.5.2 更新
HTML Help Workshop 1.3(4.74.8702.0) -
Inno Setup 6.4.0 更新
自作ツール KGetText 2.0.1.3 -
KUdCheck 2.2.1.6 -
KAutoVer 2.2.1.3 -
KGitWVer 2.1.0.2 -

サイト記述の変更

boostライブラリ

MSYS2供給からregexライブラリ(Boost.Regex)のライブラリファイル(libboost_system-mt.a、libboost_system-mt.dll.a)が削除された。これらはBoost.Regexバージョン4のライブラリファイルであったと思われる。

boostバージョン1.76.0(Historyページでは1.77.0)のBoost.Regexバージョン6.0.0はC++03を非推奨として、かつヘッダオンリーライブラリへ移行した。

C++03は古いバージョン4を使い続けるものとして、BOOST_REGEX_CXX03マクロでインクルードをv4サブディレクトリ(バージョン4)とv5(バージョン5以降)に切り替えていた。

#if !((__cplusplus >= 201103L) || (defined(_MSC_VER) && (_MSC_VER >= 1600)) || defined(BOOST_REGEX_CXX03))
# define BOOST_REGEX_CXX03
#endif
#ifdef BOOST_REGEX_CXX03
#include <boost/regex/v4/regex.hpp>
#else
#include <boost/regex/v5/regex.hpp>
#endif

MSYS2導入のBoost.Regexもバージョン4のライブラリファイルを供給してきたが、boost1.85.0以降のある時期に廃したようだ。つまり今回の更新(boost1.87.0)はv4サブディレクトリを残しながらもv5サブディレクトリのヘッダオンリー(Boost.Regexバージョン7.0.1)のみが利用できる。C++11以降に対応するmingw-w64はboost1.76.0以降で既にヘッダオンリーを利用して来たわけだが、例えばKGrepWrkは1.76.0より前からBoost.Regexを利用してライブラリファイルへのリンクがオプションに残り、今回の更新でエラーを経験する事となった。

  • boostをビルドする。boost1.75.0を前提としてライブラリビルドをBoost.Regexで例示したが、1.76.0以降は必ずしもビルドしたライブラリファイルを利用しない事を注記した。

Doxygen

バージョン1.12.0で設定ファイルALIASESオプションによるカスタムコマンド設定にバグが発生した。物理改行を指定する"^^"が機能せず、"@ilinebr"という文字列に置換される。

バグフィックスまで自動処理バッチファイルに一時しのぎパッチを当てる。

Poedit

64ビット化した。

  • セットアップ。インストールディレクトリをC:\Program Files (x86)からC:\Program Filesへ修正した。

Inno Setup

プリプロセッサのヘルプファイル(ISPP.chm)が失われているのに気付いたが、どのバージョンから失われたかは確認していない。

自作ツール

KGetText、KAutoVer、KGitWVerプロジェクトファイルが不要なboostライブラリへのリンク指示を含んでいたが、ライブラリ更新で該当ファイルが削除されてリンクエラーが発生したため、不要なリンク指示を除いた。ソースコードの変更は無くバージョン番号も更新しないが、自作ツール再ビルドにはソースコード再ダウンロードを必要とする。記述の変更は無い。

ドキュメント

参考ドキュメントの導入統合開発環境のカスタマイズ(2)で以下を変更した。C++の規格書ドラフトとコンパイラのGCCドキュメントも変更した。

  • 策定中C++26ドラフト(JTC1_SC22_WG21 N5001)に変更した。
  • GCCドキュメントを14.2.0に変更した。
  • boostドキュメントを1.87.0に変更した。
  • Doxygenドキュメントを1.13.1に変更した。