ElementsProject / ElementsProject/elements
Compilation error on WSL
- 主要言語
- C++
- スター
- 1.2k
- フォーク
- 416
- 平均マージ
- 1日 23時間
- マージ済み PR(30日)
- 15
説明
I'm currently trying to compile the latest release of the Elements Project for Windows using WSL (Ubuntu 24.04.3).
When compiling (`make`), however, the following error occurs:
```bash
$ make
Making all in src
make[1]: Entering directory '/home/joaot/elements/src'
make[2]: Entering directory '/home/joaot/elements/src'
make[3]: Entering directory '/home/joaot/elements'
make[3]: Leaving directory '/home/joaot/elements'
CXXLD qt/elements-qt.exe
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-walletview.o):walletview.cpp:(.rdata$.refptr._ZN15TransactionView16staticMetaObjectE[.refptr._ZN15TransactionView16staticMetaObjectE]+0x0): undefined reference to `TransactionView::staticMetaObject'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-walletview.o):walletview.cpp:(.rdata$.refptr._ZN15TransactionView7messageERK7QStringS2_j[.refptr._ZN15TransactionView7messageERK7QStringS2_j]+0x0): undefined reference to `TransactionView::message(QString const&, QString const&, unsigned int)'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-overviewpage.o):overviewpage.c:(.rdata$.refptr._ZTV25TransactionOverviewWidget[.refptr._ZTV25TransactionOverviewWidget]+0x0): undefined reference to `vtable for TransactionOverviewWidget'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactiontablemodel.o):transactiontablemodel.cpp:(.rdata$.refptr._ZTV21TransactionTableModel[.refptr._ZTV21TransactionTableModel]+0x0): undefined reference to `vtable for TransactionTableModel'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactiontablemodel.o):transactiontablemodel.cpp:(.rdata$.refptr._ZN21TransactionTableModel16staticMetaObjectE[.refptr._ZN21TransactionTableModel16staticMetaObjectE]+0x0): undefined reference to `TransactionTableModel::staticMetaObject'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactionview.o):transactionview.cpp:(.text+0x1532): undefined reference to `TransactionView::message(QString const&, QString const&, unsigned int)'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactionview.o):transactionview.cpp:(.text+0x170d): undefined reference to `TransactionView::message(QString const&, QString const&, unsigned int)'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactionview.o):transactionview.cpp:(.text+0x3034): undefined reference to `TransactionView::bumpedFee(uint256 const&)'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactionview.o):transactionview.cpp:(.rdata$.refptr._ZN15TransactionView9bumpedFeeERK7uint256[.refptr._ZN15TransactionView9bumpedFeeERK7uint256]+0x0): undefined reference to `TransactionView::bumpedFee(uint256 const&)'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactionview.o):transactionview.cpp:(.rdata$.refptr._ZN15TransactionView13doubleClickedERK11QModelIndex[.refptr._ZN15TransactionView13doubleClickedERK11QModelIndex]+0x0): undefined reference to `TransactionView::doubleClicked(QModelIndex const&)'
/usr/bin/x86_64-w64-mingw32-ld: qt/libbitcoinqt.a(libbitcoinqt_a-transactionview.o):transactionview.cpp:(.rdata$.refptr._ZTV15TransactionView[.refptr._ZTV15TransactionView]+0x0): undefined reference to `vtable for TransactionView'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:7567: qt/elements-qt.exe] Error 1
make[2]: Leaving directory '/home/joaot/elements/src'
make[1]: *** [Makefile:22421: all-recursive] Error 1
make[1]: Leaving directory '/home/joaot/elements/src'
make: *** [Makefile:827: all-recursive] Error 1
```
コントリビューションガイド
調査の方向性
まず、Ubuntu 24.04.3 上の WSL で、リポジトリのルートから Elements Project で報告された `make` の失敗を再現します。`src/qt/elements-qt.exe` 周辺のビルド出力と、報告された `TransactionView` および `TransactionTableModel` のリンカーシンボルを調査します;最新リリースが `make` で正常にコンパイルできれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp, ubuntu
- 領域
- build-system, operating-systems
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100