質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
make

make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。

Q&A

0回答

1068閲覧

#include <boost/program_options.hpp>が原因のエラーの対処法がわかりません

tefunamu

総合スコア12

make

make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。

0グッド

0クリップ

投稿2019/06/08 14:51

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
内田公太さん著「自作シミュレータで学ぶx86アーキテクチャ」にあるブートセクタ解析用コマンドbootsをGitHubからcloneし、コンパイルを試みたところ、以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

tefunamu@tefunamu-VirtualBox:~/test/boots$ make make boots make[1]: Entering directory '/home/tefunamu/Documents/tolset/test/boots' g++ -std=c++11 -c -o boots.o boots.cpp boots.cpp:10:10: fatal error: boost/program_options.hpp: No such file or directory #include <boost/program_options.hpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. <builtin>: recipe for target 'boots.o' failed make[1]: *** [boots.o] Error 1 make[1]: Leaving directory '/home/tefunamu/Documents/tolset/test/boots' Makefile:9: recipe for target 'all' failed make: *** [all] Error 2

boots.cppのソースコード一部

// boots.cpp : <83>R<83><93><83>\<81>[<83><8b> <83>A<83>v<83><8a><83>P<81>[<83>V<83><87><83><93><82>Ì<83>G<83><93><83>g<83><8a> <83>|<83>C<83><93><83>g<82>ð<92>è<8b>`<82>µ<82>Ü<82>·<81>B // #include <iostream> #include <array> #include <fstream> #include <string> #include <vector> #include <memory> #include <boost/program_options.hpp> #include <boost/optional.hpp> #include "read.hpp" #include "show.hpp" using namespace std; namespace po = boost::program_options;

Makefileのソースコード

TARGET = boots OBJS = boots.o bootsector.o read.o show.o \ mbr.o pbrfat.o CXXFLAGS += -std=c++11 LDFLAGS += -lboost_program_options .PHONY: all all: make $(TARGET) $(TARGET): $(OBJS) Makefile $(CXX) -o $(TARGET) $(OBJS) $(LDFLAGS) .PHONY: clean clean: rm *.o

試したこと

エラー原因として<boost/program_options.hpp>がinlcudeできてないとのことなのでLDFLAGSが引っ張れてないのかな、と思いましたが特にどうすればよいかわからず途方に暮れていました。

補足情報(FW/ツールのバージョンなど)

OS: Ubuntu18.04です。訳あってあえてUbuntuで確認しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問