UHDをWindowsでソースコードからビルドする(2)

以前、UHD を WINDOWS でビルドするという投稿をしましたが早いものでもう4年前です。
現在は以前とは違う(上記とは違う)方法になりました。ドキュメントを読めば大筋は分かりますが、細かなところを追記しました。

概要

ここではWindows上でUHDをソースコードからビルドを行います。
ここでは64bitのUHDをビルドします。

32bitの場合は、インストールするboostライブラリを32bitにして下さい。

 

ソースコードからのビルドドキュメント

UHDのビルドドキュメントには2種類有り、一つは古いので注意。
KB(=Knowledge Base)にある方が新しく正確。

 

新しい方
Building and Installing the USRP Open Source Toolchain (UHD and GNU Radio) on Windows
https://kb.ettus.com/Building_and_Installing_the_USRP_Open_Source_Toolchain_(UHD_and_GNU_Radio)_on_Windows

 

古いので参照しない
http://files.ettus.com/manual/page_build_guide.html

 

必要なソフトのダウンロードとインストール(Installing Dependencies)

ソース用のフォルダを作成

ここではデスクトップ上のworkフォルダをソースコード用のフォルダを作業フォルダとして解説します。

 

Visual Studio

Visual Studio 2015 Communicationをダウンロードしてインストールします。

デフォルトではインストール時にC++がインストールされないため、下図のようにインストール時にチェックを入れておきます。

clip_image001

 

Cmake

makeファイル生成ツールを以下からダウンロードしてインストール。

cmake-3.6.1-win64-x64.msiをダウンロード

https://cmake.org/download/

インストール時に特別な設定は無し。

Boost

C++ ライブラリを以下からダウンロードしてインストール。

boost_1_61_0-msvc-14.0-64.exe

VS2015のため、msvc14をダウンロード

https://sourceforge.net/projects/boost/files/boost-binaries/

インストール先は

c:\local\boost_1_61_0\

Python

こちらもmakeファイル生成に必要なのでインストール。

KBにはPython2.7系を使用すると書かれているが、3.5系でも平気。

https://www.python.org/downloads/

python-3.5.2.exe

Mako

makeファイル生成に必要なPythonのテンプレートパッケージをインストール

http://www.makotemplates.org/download.html

以下のようにしてphythonのコマンドでインストールする。

>python -m pip install -U pip

>pip install Mako

clip_image002

LibUSB

USBを操作するライブラリ。

以下のURLから、最新版のディレクトリに移動して.7zファイルをダウンロード。

ソースコードコンパイル用のフォルダを用意して展開しておきます。

展開先はwork\libusb-1.0.20\

https://sourceforge.net/projects/libusb/files/libusb-1.0/

 

ソースコードを取得する

以下のURLから最新版のUHD.tar.gzをダウンロードして展開します。

展開先はwork\uhd-3.9.4\

http://files.ettus.com/binaries/uhd/src/

 

ビルドする

あとはKB通りビルドするだけ。

全文を引用しておきます。

Building

All prerequisites have now been installed and downloaded.

Configuring the Building

  • Open the Cmake GUI
  • Select source code directory
    C:\Users\username\uhd-release_003_009_002\
  • Select binary build directory
    C:\Users\username\uhd-release_003_009_002\build
  • Check the Advanced checkbox
  • Click Configure
  • Set Visual Studio 12 2013 Win64 as the compiler
  • Change or add the following entries
    Boost_INCLUDE_DIR 
    C:/local/boost_1_58_0
  • Add the following entries with type PATH
    Boost_LIBRARY_DIRS 
    C:/local/boost_1_58_0/lib64-msvc-12.0
    LIBUSB_INCLUDE_DIRS 
    C:/Users/username/libusb-1.0.20/include/libusb-1.0
  • Add the following entry with type FILEPATH
    LIBUSB_LIBRARIES 
    C:/Users/username/libusb-1.0.20/MS64/dll/libusb-1.0.lib
  • Click Generate

Compiling UHD

Open Visual Studio 2013 and open the UHD project file generated by CMake.

File > Open Project

C:\Users\username\uhd-release_003_009_002\build\UHD.sln

Change the build type from Debug to Release. The **ALL_BUILD** project should be selected already. Run the build, Build > Build Solution.

 

以上

コメント