COIN-ORのIpoptをARMコアCPUのLinux環境にインストール
NVIDIAのJetson TX2で、最適化ライブラリのIpoptを使いたいと思います。
(Raspberry Piでも動くといいなぁ。誰か試したら教えてください。)
一般的なインストールの流れは、とてもよくまとまった記事があるので、
d.hatena.ne.jp
を参考にしてください。
最後の引数の環境指定 -build=armが差分です。
../configure --prefix=/usr/local -enable-static CXX=g++ CC=gcc F77=gfortran -build=arm
上手くコンパイルできるかどうかをtestのコードで試してみたいと思います。
cd ~/Ipopt-3.12.8/build/Ipopt/test
g++ hs071_main.cpp hs071_nlp.cpp -I/usr/local/include/coin /usr/local/lib/libipopt.a /usr/local/lib/libcoinmumps.a -lgfortran -lblas -llapack -ldl
で、出来たファイルa.outを実行すると、
This is Ipopt version 3.12.8, running with linear solver mumps.
~中略~
Final value of the constraints:
g(0) = 25
g(1) = 40
と表示が出て上手く動いていそうだと分かります。
再起動したら、
g++ hs071_main.cpp hs071_nlp.cpp -I/usr/local/include/coin -L/usr/local/lib -lipopt -llapack -lblas -coinmumps -lgfortran -lm -ldl
で大丈夫でした。。。