SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
naosuke テクニカルプレゼンテーション 2013.06.04(火)
C言語入門者に対するコンパイラの比較
なおすけ
E-mail: naosuke@live.jp
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1. はじめに
2. 製品紹介
3. 比較
4. まとめ
目次
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1. はじめに
2. 製品紹介
3. 比較
4. まとめ
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1-­‐1  ENIEにおけるCのプログラミング環境
プログラミング1,2
Windows環境でBCCプログラミング
→  入学時にインストール
IT業界(オープンソース)
業務での開発 →    GCC が主流
ブログ・Twitterなど →    GCCが前提
情報コース3年次の実験
UNIX環境でGCCプログラミング
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1-­‐2  GCCとBCCの比較を選んだ理由
・ ノートPCはMacを所有
・ 授業ではGCCを利用
・ 受講者の大半はBCCを利用
・ 授業の説明ではBCCが前提
その他
Windows環境でのBCCとGCCの相違や利点の整理して比較
・ GCCとBCCでは結果が異なる場合もある
・ 授業サーバはGCCを利用
・ 担当教員も、本当はGCCを推奨したい
花川
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1-­‐2  GCCとBCCの比較を選んだ理由
・ ノートPCはMacを所有
・ 授業ではGCCを利用
・ 受講者の大半はBCCを利用
・ 授業の説明ではBCCが前提
その他
Windows環境でのBCCとGCCの相違や利点の整理して比較
・ GCCとBCCでは結果が異なる場合もある
・ 授業サーバはGCCを利用
・ 担当教員も、本当はGCCを推奨したい
花川
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1-­‐2  GCCとBCCの比較を選んだ理由
・ ノートPCはMacを所有
・ 授業ではGCCを利用
・ 受講者の大半はBCCを利用
・ 授業の説明ではBCCが前提
その他
Windows環境でのBCCとGCCの相違や利点の整理して比較
・ GCCとBCCでは結果が異なる場合もある
・ 授業サーバはGCCを利用
・ 担当教員も、本当はGCCを推奨したい
花川
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1. はじめに
2. 製品紹介
3. 比較
4. まとめ
naosuke テクニカルプレゼンテーション 2013.06.04(火)
2-­‐1  Borland C++  Compiler  
・ 米Borland社が開発したCコンパイラ
・元々はTurbo  Cという統合開発環境に含まれていた
・ WindowsOSにのみ対応
・ コンパイルメッセージは日本語表記
・ もともとは教育用コンパイラだった
・商用目的の利用も認められていなかった
・ 10年以上更新されていない
naosuke テクニカルプレゼンテーション 2013.06.04(火)
2-­‐2  GNU C  Compiler  
・ GNUプロジェクトが提供するCコンパイラ
・ UNIX系OSに広く対応
・ UNIX系には標準搭載
・ WindowsではMinGWやCygwinで利用可能
・ コンパイルメッセージは英語表記
・ 現在も開発が継続
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1. はじめに
2. 製品紹介
3. 比較
4. まとめ
naosuke テクニカルプレゼンテーション 2013.06.04(火)
3-­‐1 BCCの特徴
メリット
・ インストールが簡単
・ コンパイル時間が速い
・ コンパイルメッセージが日本語なのでわかりやすい
デメリット
・ Cの最新の仕様に対応していない
・ 使えるメモリが少ない
→  画像処理などに対応しきれない
naosuke テクニカルプレゼンテーション 2013.06.04(火)
3-­‐1 BCCの特徴
メリット
・ インストールが簡単
・ コンパイル時間が速い
・ コンパイルメッセージが日本語なのでわかりやすい
デメリット
・ Cの最新の仕様に対応していない
・ 使えるメモリが少ない
→  画像処理などに対応しきれない
naosuke テクニカルプレゼンテーション 2013.06.04(火)
3-­‐1 BCCの特徴
メリット
・ インストールが簡単
・ コンパイル時間が速い
・ コンパイルメッセージが日本語なのでわかりやすい
デメリット
・ Cの最新の仕様に対応していない
・ 使えるメモリが少ない
→  画像処理などに対応しきれない
naosuke テクニカルプレゼンテーション 2013.06.04(火)
3-­‐1 BCCの特徴
メリット
・ インストールが簡単
・ コンパイル時間が速い
・ コンパイルメッセージが日本語なのでわかりやすい
デメリット
・ Cの最新の仕様に対応していない
・ 使えるメモリが少ない
→  画像処理などに対応しきれない
naosuke テクニカルプレゼンテーション 2013.06.04(火)
3-­‐1 BCCの特徴
メリット
・ インストールが簡単
・ コンパイル時間が速い
・ コンパイルメッセージが日本語なのでわかりやすい
デメリット
・ Cの最新の仕様に対応していない
・ 使えるメモリが少ない
→  画像処理などに対応しきれない
naosuke テクニカルプレゼンテーション 2013.06.04(火)
3-­‐2  GCCの特徴
メリット
デメリット
・ Windowsへの導入が少し難しい
ソフトウェアとして
・ UNIXがあればどこでも使える
・ デバッガなどの周辺環境が豊富
・ 商用利用も可能
・ 最新のCの規格に対応
コンパイラとして
・ 使えるメモリが多い
→  画像処理もできる
・ 最適化に優れている
・ 64ビット整数に対応
・ 最新のCの仕様に対応
naosuke テクニカルプレゼンテーション 2013.06.04(火)
1. はじめに
2. 製品紹介
3. 比較
4. まとめ
naosuke テクニカルプレゼンテーション 2013.06.04(火)
4-­‐1  比較結果
BCC GCC
対応OS Windowsのみ
UNIX系OS
Windows
Windowsに対する
インストールの難しさ
日本語表記のため
易しい
英語表記のため
難しい
コンパイルメッセージ 日本語 英語
使用できるメモリ量 少ない 多い
開発状況 開発停止 現在も開発が続いている
naosuke テクニカルプレゼンテーション 2013.06.04(火)
4-­‐2  まとめ
BCCを使うメリット
・ インストールが簡単
・ コンパイルメッセージがわかりやすい
C言語学習の導入にはBCCが向いている
naosuke テクニカルプレゼンテーション 2013.06.04(火)
4-­‐2  まとめ
BCCのデメリット
・ 使えるメモリが少ない
・ Cの最新の仕様に対応していない
・ コンパイルメッセージが日本語
GCCのメリット
・ 画像処理も問題なく行える
・ 最新の仕様にも対応
・ 英語だが、情報量が豊富
naosuke テクニカルプレゼンテーション 2013.06.04(火)
4-­‐2  まとめ
BCCのデメリット
・ 使えるメモリが少ない
・ Cの最新の仕様に対応していない
・ コンパイルメッセージが日本語
GCCのメリット
・ 画像処理も問題なく行える
・ 最新の仕様にも対応
・ 英語だが、情報量が豊富
C言語に慣れたらGCCのほうがよい
naosuke テクニカルプレゼンテーション 2013.06.04(火)
4-­‐3  BCCからGCCへ
・ 将来、ソフトウェアの世界に行くなら早めにGCCへ
・ 方法は2つ
・ 1つはWindowsを捨てる
・ 1つはMinGWやCygwinを…
・ 私に聞いて少しなら教えます
・ もっと気になる方はSLPへ
naosuke テクニカルプレゼンテーション 2013.06.04(火)
5-­‐1  参考文献
・ GCC,  the  GNU  Compiler  Collection
http://gcc.gnu.org
・ MinGW
http://www.mingw.org
・ Win32/Compiler/備忘録
http://apis.jpn.ph/fswiki/wiki.cgi?page=Win32%2FCompiler
・ BCCでプログラムを作ろう
http://www.kumei.ne.jp/c_lang/bcc/

Mais conteúdo relacionado

Mais procurados

CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
whywaita
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
Kouhei Sutou
 

Mais procurados (20)

できる!並列・並行プログラミング
できる!並列・並行プログラミングできる!並列・並行プログラミング
できる!並列・並行プログラミング
 
アジャイル開発の進め方
アジャイル開発の進め方アジャイル開発の進め方
アジャイル開発の進め方
 
CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)
 
pythonワンライナーのすゝめ
pythonワンライナーのすゝめpythonワンライナーのすゝめ
pythonワンライナーのすゝめ
 
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
 
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
 
Teslaにおけるコンピュータビジョン技術の調査 (2)
Teslaにおけるコンピュータビジョン技術の調査 (2)Teslaにおけるコンピュータビジョン技術の調査 (2)
Teslaにおけるコンピュータビジョン技術の調査 (2)
 
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
 
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
 
5分で分かるアジャイルムーブメントの歴史 拡大版
5分で分かるアジャイルムーブメントの歴史 拡大版5分で分かるアジャイルムーブメントの歴史 拡大版
5分で分かるアジャイルムーブメントの歴史 拡大版
 
Dapr on Kubernetes
Dapr on KubernetesDapr on Kubernetes
Dapr on Kubernetes
 
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
 
【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
 
インフラ領域の技術スタックや業務内容について紹介
インフラ領域の技術スタックや業務内容について紹介インフラ領域の技術スタックや業務内容について紹介
インフラ領域の技術スタックや業務内容について紹介
 
20分でわかるgVisor入門
20分でわかるgVisor入門20分でわかるgVisor入門
20分でわかるgVisor入門
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
 
論文の書き方入門 2017
論文の書き方入門 2017論文の書き方入門 2017
論文の書き方入門 2017
 
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
 
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
 

Semelhante a BCCとGCCの比較

SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
Takanori Suzuki
 

Semelhante a BCCとGCCの比較 (20)

SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
 
「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp
「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp
「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp
 
「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp
「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp
「非エンジニア向け 初めてのプログラミング体験講座」@CodeCamp
 
.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーション.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーション
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
 
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
 
マイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tyeマイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tye
 
160901 osce2016sre
160901 osce2016sre160901 osce2016sre
160901 osce2016sre
 
LightSwitchでWebアプリ開発
LightSwitchでWebアプリ開発LightSwitchでWebアプリ開発
LightSwitchでWebアプリ開発
 
DevOps、その前に
DevOps、その前にDevOps、その前に
DevOps、その前に
 
.NET Coreとツール類の今
.NET Coreとツール類の今.NET Coreとツール類の今
.NET Coreとツール類の今
 
新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ
 
C# 7 New Features
C# 7 New FeaturesC# 7 New Features
C# 7 New Features
 
.NET の今と今後に思うこと (Tokyo Ver.)
.NET の今と今後に思うこと (Tokyo Ver.).NET の今と今後に思うこと (Tokyo Ver.)
.NET の今と今後に思うこと (Tokyo Ver.)
 
WordPressの進化とWordPress名古屋コミュニティの進化
WordPressの進化とWordPress名古屋コミュニティの進化WordPressの進化とWordPress名古屋コミュニティの進化
WordPressの進化とWordPress名古屋コミュニティの進化
 
Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15
 
Web App for Containers のデプロイでつまずいた話
Web App for Containers のデプロイでつまずいた話Web App for Containers のデプロイでつまずいた話
Web App for Containers のデプロイでつまずいた話
 
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
 
de:code報告
de:code報告de:code報告
de:code報告
 

BCCとGCCの比較