Enviar búsqueda
Cargar
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
•
0 recomendaciones
•
1,332 vistas
Noriaki Ando
Seguir
2016年11月10日 高度ポリテクセンター「RTミドルウェアによるロボットプログラミング技術」コース
Leer menos
Leer más
Educación
Denunciar
Compartir
Denunciar
Compartir
1 de 18
Descargar ahora
Descargar para leer sin conexión
Recomendados
3.RTCプログラミング演習
3.RTCプログラミング演習
openrtm
4.総合演習(1)
4.総合演習(1)
openrtm
201110 03
201110 03
openrtm
201110 02 Polytech center 2
201110 02 Polytech center 2
openrtm
Rtshell入門
Rtshell入門
openrtm
201111 04
201111 04
openrtm
201110 01 Polytech Center 1
201110 01 Polytech Center 1
openrtm
Pythonで始めるWebアプリケーション開発
Pythonで始めるWebアプリケーション開発
Takahiro Kubo
Recomendados
3.RTCプログラミング演習
3.RTCプログラミング演習
openrtm
4.総合演習(1)
4.総合演習(1)
openrtm
201110 03
201110 03
openrtm
201110 02 Polytech center 2
201110 02 Polytech center 2
openrtm
Rtshell入門
Rtshell入門
openrtm
201111 04
201111 04
openrtm
201110 01 Polytech Center 1
201110 01 Polytech Center 1
openrtm
Pythonで始めるWebアプリケーション開発
Pythonで始めるWebアプリケーション開発
Takahiro Kubo
各OSにおいて、OpenCVをpythonから使う方法
各OSにおいて、OpenCVをpythonから使う方法
Katsuhiro Morishita
Rtコンポーネント作成入門
Rtコンポーネント作成入門
openrtm
Rtミドルウェア講習会@名城大学 20140624 3
Rtミドルウェア講習会@名城大学 20140624 3
openrtm
IBM Rational Team Concertに触れてみた
IBM Rational Team Concertに触れてみた
You&I
160705-02 RTミドルウエア講習会・名城大
160705-02 RTミドルウエア講習会・名城大
openrtm
Pythonを中心としたチーム開発
Pythonを中心としたチーム開発
Ryo Takahashi
190605 04
190605 04
openrtm
FuelPHP活用事例
FuelPHP活用事例
Yusuke Naka
密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境
Fumihito Yokoyama
Net fringejp2016
Net fringejp2016
Yusuke Fujiwara
WebRTC mediasoup on raspberrypi3
WebRTC mediasoup on raspberrypi3
mganeko
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
decode2016
NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#
Yoshifumi Kawai
Slam実習
Slam実習
openrtm
Rtミドルウェア講習会@名城大学 20140624 2
Rtミドルウェア講習会@名城大学 20140624 2
openrtm
UniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for Unity
Yoshifumi Kawai
Bluetoothでgo!
Bluetoothでgo!
Kouji Matsui
Rtミドルウェアサマーキャンプ2021_宮本信彦
Rtミドルウェアサマーキャンプ2021_宮本信彦
openrtm
オープンCAEとPython
オープンCAEとPython
TatsuyaKatayama
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
Yoshifumi Kawai
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎
Noriaki Ando
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
openrtm
Más contenido relacionado
La actualidad más candente
各OSにおいて、OpenCVをpythonから使う方法
各OSにおいて、OpenCVをpythonから使う方法
Katsuhiro Morishita
Rtコンポーネント作成入門
Rtコンポーネント作成入門
openrtm
Rtミドルウェア講習会@名城大学 20140624 3
Rtミドルウェア講習会@名城大学 20140624 3
openrtm
IBM Rational Team Concertに触れてみた
IBM Rational Team Concertに触れてみた
You&I
160705-02 RTミドルウエア講習会・名城大
160705-02 RTミドルウエア講習会・名城大
openrtm
Pythonを中心としたチーム開発
Pythonを中心としたチーム開発
Ryo Takahashi
190605 04
190605 04
openrtm
FuelPHP活用事例
FuelPHP活用事例
Yusuke Naka
密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境
Fumihito Yokoyama
Net fringejp2016
Net fringejp2016
Yusuke Fujiwara
WebRTC mediasoup on raspberrypi3
WebRTC mediasoup on raspberrypi3
mganeko
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
decode2016
NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#
Yoshifumi Kawai
Slam実習
Slam実習
openrtm
Rtミドルウェア講習会@名城大学 20140624 2
Rtミドルウェア講習会@名城大学 20140624 2
openrtm
UniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for Unity
Yoshifumi Kawai
Bluetoothでgo!
Bluetoothでgo!
Kouji Matsui
Rtミドルウェアサマーキャンプ2021_宮本信彦
Rtミドルウェアサマーキャンプ2021_宮本信彦
openrtm
オープンCAEとPython
オープンCAEとPython
TatsuyaKatayama
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
Yoshifumi Kawai
La actualidad más candente
(20)
各OSにおいて、OpenCVをpythonから使う方法
各OSにおいて、OpenCVをpythonから使う方法
Rtコンポーネント作成入門
Rtコンポーネント作成入門
Rtミドルウェア講習会@名城大学 20140624 3
Rtミドルウェア講習会@名城大学 20140624 3
IBM Rational Team Concertに触れてみた
IBM Rational Team Concertに触れてみた
160705-02 RTミドルウエア講習会・名城大
160705-02 RTミドルウエア講習会・名城大
Pythonを中心としたチーム開発
Pythonを中心としたチーム開発
190605 04
190605 04
FuelPHP活用事例
FuelPHP活用事例
密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境
Net fringejp2016
Net fringejp2016
WebRTC mediasoup on raspberrypi3
WebRTC mediasoup on raspberrypi3
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#
Slam実習
Slam実習
Rtミドルウェア講習会@名城大学 20140624 2
Rtミドルウェア講習会@名城大学 20140624 2
UniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for Unity
Bluetoothでgo!
Bluetoothでgo!
Rtミドルウェアサマーキャンプ2021_宮本信彦
Rtミドルウェアサマーキャンプ2021_宮本信彦
オープンCAEとPython
オープンCAEとPython
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
What, Why, How Create OSS Libraries - 過去に制作した30のライブラリから見るC#コーディングテクニックと個人OSSの...
Destacado
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎
Noriaki Ando
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
openrtm
RTミドルウェアによるロボットプログラミング技術 3. RTMによるプログラミング
RTミドルウェアによるロボットプログラミング技術 3. RTMによるプログラミング
Noriaki Ando
2016 summercamp rtshell入門
2016 summercamp rtshell入門
openrtm
グループ2 Gprese
グループ2 Gprese
openrtm
2016 summercamp 当研究室でのRTミドルウエアの取り組み
2016 summercamp 当研究室でのRTミドルウエアの取り組み
openrtm
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
Noriaki Ando
2016 summercamp RTコンポーネント開発のためのシステムモデリング講習会
2016 summercamp RTコンポーネント開発のためのシステムモデリング講習会
openrtm
グループ5 ひとりでもだるまさんが転んだ
グループ5 ひとりでもだるまさんが転んだ
openrtm
2016 summercamp 効率よいRTシステム運用法
2016 summercamp 効率よいRTシステム運用法
openrtm
グループ1最終プレゼン資料
グループ1最終プレゼン資料
openrtm
2016 summercamp SysML講習会
2016 summercamp SysML講習会
openrtm
グループ4 ロボットで福笑い
グループ4 ロボットで福笑い
openrtm
RTミドルウェアによるロボットプログラミング技術 1.コース概要
RTミドルウェアによるロボットプログラミング技術 1.コース概要
Noriaki Ando
Destacado
(14)
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
RTミドルウェアによるロボットプログラミング技術 3. RTMによるプログラミング
RTミドルウェアによるロボットプログラミング技術 3. RTMによるプログラミング
2016 summercamp rtshell入門
2016 summercamp rtshell入門
グループ2 Gprese
グループ2 Gprese
2016 summercamp 当研究室でのRTミドルウエアの取り組み
2016 summercamp 当研究室でのRTミドルウエアの取り組み
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
RTミドルウェアによるロボットプログラミング技術 4.ロボットの運動学と制御の基礎(解答)
2016 summercamp RTコンポーネント開発のためのシステムモデリング講習会
2016 summercamp RTコンポーネント開発のためのシステムモデリング講習会
グループ5 ひとりでもだるまさんが転んだ
グループ5 ひとりでもだるまさんが転んだ
2016 summercamp 効率よいRTシステム運用法
2016 summercamp 効率よいRTシステム運用法
グループ1最終プレゼン資料
グループ1最終プレゼン資料
2016 summercamp SysML講習会
2016 summercamp SysML講習会
グループ4 ロボットで福笑い
グループ4 ロボットで福笑い
RTミドルウェアによるロボットプログラミング技術 1.コース概要
RTミドルウェアによるロボットプログラミング技術 1.コース概要
Similar a RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
181106 02
181106 02
openrtm
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
sandai
Alt#0x008 2017/5/20
Alt#0x008 2017/5/20
Koki Natsume
ASP.NET vNextの全貌
ASP.NET vNextの全貌
A AOKI
Wasm blazor and wasi 2
Wasm blazor and wasi 2
Takao Tetsuro
Monomeeting 20081022
Monomeeting 20081022
Atsushi Eno
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
Takao Tetsuro
CMake multiplatform build-tool
CMake multiplatform build-tool
Naruto TAKAHASHI
.NET 5 勉強会 ~.NET Framework から .NET へ~
.NET 5 勉強会 ~.NET Framework から .NET へ~
Fujio Kojima
20230128.pptx
20230128.pptx
ssuserdad311
OpenCV2.2 Install Guide ver.0.5
OpenCV2.2 Install Guide ver.0.5
Tsukasa Sugiura
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
Izumi Tsutsui
Cross Platform Make
Cross Platform Make
Tatsumi Naganuma
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
Yasutaka Hamada
Ansible2.0と実用例
Ansible2.0と実用例
OSSラボ株式会社
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
Masahito Zembutsu
もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順
Hide Koba
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Ryo Nakamaru
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Masahito Zembutsu
【学習メモ#4th】12ステップで作る組込みOS自作入門
【学習メモ#4th】12ステップで作る組込みOS自作入門
sandai
Similar a RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
(20)
181106 02
181106 02
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
Alt#0x008 2017/5/20
Alt#0x008 2017/5/20
ASP.NET vNextの全貌
ASP.NET vNextの全貌
Wasm blazor and wasi 2
Wasm blazor and wasi 2
Monomeeting 20081022
Monomeeting 20081022
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
CMake multiplatform build-tool
CMake multiplatform build-tool
.NET 5 勉強会 ~.NET Framework から .NET へ~
.NET 5 勉強会 ~.NET Framework から .NET へ~
20230128.pptx
20230128.pptx
OpenCV2.2 Install Guide ver.0.5
OpenCV2.2 Install Guide ver.0.5
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
Cross Platform Make
Cross Platform Make
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
Ansible2.0と実用例
Ansible2.0と実用例
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
【学習メモ#4th】12ステップで作る組込みOS自作入門
【学習メモ#4th】12ステップで作る組込みOS自作入門
Último
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
Ken Fukui
International Politics I - Lecture 1
International Politics I - Lecture 1
Toru Oga
My Inspire High Award 2024 「孤独は敵なのか?」
My Inspire High Award 2024 「孤独は敵なのか?」
inspirehighstaff03
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
yukisuga3
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
inspirehighstaff03
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
Ken Fukui
My Inspire High Award 2024 「家族とは何か」
My Inspire High Award 2024 「家族とは何か」
inspirehighstaff03
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」
inspirehighstaff03
My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」
inspirehighstaff03
What I did before opening my business..pdf
What I did before opening my business..pdf
oganekyokoi
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
inspirehighstaff03
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
inspirehighstaff03
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
Ken Fukui
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
inspirehighstaff03
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
Ken Fukui
My Inspire High Award 2024 「正義って存在するの?」
My Inspire High Award 2024 「正義って存在するの?」
inspirehighstaff03
Divorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdf
oganekyokoi
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
ssusere0a682
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
inspirehighstaff03
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
inspirehighstaff03
Último
(20)
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
International Politics I - Lecture 1
International Politics I - Lecture 1
My Inspire High Award 2024 「孤独は敵なのか?」
My Inspire High Award 2024 「孤独は敵なのか?」
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
My Inspire High Award 2024 「家族とは何か」
My Inspire High Award 2024 「家族とは何か」
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」
What I did before opening my business..pdf
What I did before opening my business..pdf
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
My Inspire High Award 2024 「正義って存在するの?」
My Inspire High Award 2024 「正義って存在するの?」
Divorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdf
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
1.
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
2.
2 概要 1. プログラミングの基礎 2. Linuxでのプログラミング 3.
Windowsでのプログラミング 目標: 1.LinuxおよびWindowsでの開発手法(主にC++)を学ぶ 2.CMakeを利用して、同じプログラムをLinuxとWindowsとで コンパイルして動作させる。
3.
プログラミングの流れ 3 プログラム コンパイル リンク 実⾏ プログラム コンパイル (javac.exe) JavaVM(java.exe)で 実⾏ プログラム Pythonインタプリタで 実⾏ C++ Java Python ビルド (コンパイル +リンク)
4.
CMake • コンパイラに依存しないビルド⾃動化の ためのフリーソフトウェア • 様々なOS上の様々な開発環境⽤ビルドフ ァイルを⽣成することができる –
Linux では Makefileを⽣成 – Windows ではVCのプロジェクトファイルを ⽣成 • 最近のオープンソースソフトウェアでは CMakeでビルドするようになっているも のが多数。 4
5.
プログラム作成の流れ 5 コード作成 CMake Visual
C++ コンポーネントの 仕様の⼊⼒ VCプロジェクトファイル またはMakefileの⽣成 実装およびコンパイル 実⾏ファイルの⽣成 コード作成 CMake make + gcc (g++) Windows Linux 途中まで流れは同じ、コンパイラが異なる
6.
コンポーネント作成の流れ 6 RTBUilder CMake Visual
C++ コンポーネントの 仕様の⼊⼒ VCプロジェクトファイル またはMakefileの⽣成 実装およびコンパイル 実⾏ファイルの⽣成 RTBUilder CMake make + gcc (g++) Windows Linux 途中まで流れは同じ、コンパイラが異なる
7.
演習︓CMakeを使ってみよう • CMakeを使って同じプログラムをLinuxと Windowsの両⽅でビルドしてみる。 • ⼿順︓ –
サンプルプログラムをダウンロード – CMakeLists.txtを編集 – cmake (cmake-gui) – make or VC++ でコンパイル – 実⾏ 7
8.
ソフトウェアのインストール (Linux) • openrtm.orgの – 「ダウンロード」→「C++」→ 「1.1.2」 •
pkg_install_ubuntu.s h をダウンロード • sudo sh pkg_install_ubuntu.s h を実⾏ • cmakeもインストール 8 $ wget http://svn.openrtm.org/OpenRTM-aist/tags/RELEASE_1_1_2/OpenRTM-aist/build/pkg_install_ubuntu.sh $ sudo sh pkg_install_ubuntu.sh –c $ sudo apt-get install cmake 【使用コマンド一覧】 wget: ファイルなどをダウンロード sudo: 管理者権限で実行 sh: シェルコマンド apt-get: パッケージインストール
9.
Linux ダウンロード • ブラウザからダウンロ ード または端末 “terminal”
を開いて wgetで取得&展開 • 以降の操作は terminal で⾏うので開いたまま に 9 $ mkdir work $ wget http://openrtm.org/openrtm/sites/default/files/6135/arm2dof_ver001.zip --2016-11-05 22:57:38-- : $ unzip arm2dof_ver001.zip Archive: arm2dof_ver001.zip creating: arm2dof/ inflating: arm2dof/arm2dof.cpp inflating: arm2dof/CMakeLists.txt $ cd arm2dof/ $ ls CMakeLists.txt arm2dof.cpp $ 【使用コマンド一覧】 mkdir: フォルダ(ディレクトリ)を作成 wget: ファイルなどをダウンロード unzip: ZIPファイルを展開 cd: ディレクトリに移動 ls: ファイル一覧を表示 左上ボタンを押して、検 索窓に”terminal”と入 力し terminal を起動
10.
CMakeLists.txtの編集 • CMakeLists.txt をgedit( エディタ)で開く •
2⾏コメントイン – ⾏頭の ʻ#ʼ を削除 • 保存・終了 add_executable(arm arm2dof.cpp) の⾏は、 • 実⾏ファイル(executable) arm2dof を作成せよ • そのためのソースコードは arm2dof.cpp である ということを意味している。 10 Linux $ gedit CMakeLists.txt または $ vi CMakeLists.txt または $ emacs CMakeLists.txt geditの編集画面
11.
cmake & make
& 実⾏ • build ディレクトリを作成 • cmake .. を実⾏ • make を実⾏ • arm2dofが⽣成される • arm2dofを実⾏ 11 Linux n-ando@Ubuntu1604-64:~/work/arm2dof/build$ mkdir build n-ando@Ubuntu1604-64:~/work/arm2dof/build$ cmake .. -- The C compiler identification is GNU 5.4.0 -- The CXX compiler identification is GNU 5.4.0 : 中略 -- Configuring done -- Generating done -- Build files have been written to: /home/n-ando/work/arm2dof/build n-ando@Ubuntu1604-64:~/work/arm2dof/build$ make Scanning dependencies of target arm2dof [ 50%] Building CXX object CMakeFiles/arm2dof.dir/arm2dof.cpp.o [100%] Linking CXX executable arm2dof [100%] Built target arm2dof n-ando@Ubuntu1604-64:~/work/arm2dof/build$ ls arm2dof CMakeCache.txt CMakeFiles cmake_install.cmake Makefile n-ando@Ubuntu1604-64:~/work/arm2dof/build$ ./arm2dof pos (x, y): -1, 1 ==> angle (th0, th1): 0, 0 pos (x, y): -0.5, 1 ==> angle (th0, th1): 0, 0 pos (x, y): 0, 1 ==> angle (th0, th1): 0, 0 pos (x, y): 0.5, 1 ==> angle (th0, th1): 0, 0 pos (x, y): 1, 1 ==> angle (th0, th1): 0, 0 n-ando@Ubuntu1604-64:~/work/arm2dof/build$ 【使用コマンド一覧】 cmake: コマンド make: Makefileに基づいてコンパイル・ リンクするためのコマンド arm2dof: 今回作成する実行ファイル 【ディレクトリ指定】 . or ./ : 現在のディレクトリ(カレントディレ クトリ) .. or ../ : 現在のディレクトリの一つ上の ディレクトリ(親ディレクトリ)
12.
ソフトウェアのインストール (Windows) • http://bit.ly/2fNLE6a にアクセス • 以下をインストール –
Python – OpenRTM-aist – PyYAML – Cmake – Doxygen – TeraTerm 12
13.
ダウンロード Windows • ブラウザからダウン ロード • ZIPを展開 •
arm2dofフォルダの 下に – arm2dof.cpp – CMakeLists.txt の2つのファイルが展開 される 13 http://bit.ly/2fpwDon Windows
14.
CMakeLists.txtの編集 • CMakeLists.txt をエ ディタで開く •
2⾏コメントイン – ⾏頭の ʻ#ʼ を削除 add_executable(arm arm2dof.cpp) の⾏は、 • 実⾏ファイル(executable) arm2dof を作成せよ • そのためのソースコードは arm2dof.cpp である ということを意味している。 14 Windows
15.
cmake-gui • スタートメニューからcmake- gui を起動 –
スタートメニュー “cmake”内 – 検索窓でcmakeと⼊⼒するの が早い • CMakeLists.txtを受けのテキ ストBOXにDnD • “Configure”ボタンを押下 • ダイアログでVisual Studio 12 2013を選択 • 下の窓に “Configuring done” ならOK • “Generate”ボタンを押下 • 下の窓に “Generating done” と出ていれば完了 15 ① CMakeLists.txt を上のテキストボックスに ドラッグアンドドロップ ② 下のテキストボックスに “/build” を追加。上書き? で “OK” をクリック ③ “Configure”ボタンを押す ④ Visual Studio 12 2013 を選択 ⑤ “Generate”ボタンを押す Windows
16.
コンパイル(ビルド) • Build フォルダ内の “Project.sln”をダブルクリ ック •
Visual C++ 2013が起動 • “ビルド”→”ソリューション のビルド”でコンパイル と出ていれば正常終了 • arm2dof¥build¥Debug の 下に arm2dof.exe ができ ている 16 ビルド: 2 正常終了、0 失敗、0 更新不要、1 スキップ ① ダブルクリックでVC起動 ② ビルド ③ ビルド結果確認 Windows
17.
実⾏ • コマンドプロンプトを起 動 – Explorerのアドレスバーに “cmd”
と⼊⼒しEnter • プロンプトで “arm2dof.exe” と⼊⼒ • 結果が表⽰される。 – ダミーコードなので、 angle = (0, 0) でしか表 ⽰されない – 2⽇⽬に練習問題として実 装してもらいます。 17 Windows
18.
まとめ • CMakeを利⽤すると、同じソースコード をWindowsでもLinuxでコンパイルでき る – CMakeLists.txt
をcmake (または cmake- gui)で処理 – Windowsでは プロジェクトファイルとソリ ューションファイル – Linuxでは Makefile を作成 – それぞれの⽅法でビルド 18
Descargar ahora