ラベル 東京農工大学 の投稿を表示しています。 すべての投稿を表示
ラベル 東京農工大学 の投稿を表示しています。 すべての投稿を表示

2020年9月5日土曜日

CentOSでActiveRecordが利用できない問題の解決方法

CentOS 7にRails 6環境を構築しようとしたらそもそもSQLite3の利用でハマった.「SQLite 3.8.3 or later is required (found 3.7.17)」というエラーが出てそのまま先に進めない.そこで,緊急の対策として,下記で対処することにする.

  • SQLite3の最新版をユーザのホームディレクトリ以下に構築
  • そのSQLite3を利用して,Rails環境を構築

以下,手順のメモ.

SQLite3最新版の構築

2020年9月4日現在,最新版は3.33.0なので,それをダウンロードして構築する.

# 作業自体は /tmp で行う
$ cd /tmp
$ wget https://www.sqlite.org/2020/sqlite-autoconf-3330000.tar.gz
...(略)
$ tar xzvf sqlite-autoconf-3330000.tar.gz
...(略)
$ cd sqlite-autoconf-3330000

# 自分のホームディレクトリ以下にインストールする
#(ここでは $HOME/sqlite3 にインストールするが,好きな場所でよい)
$ mkdir $HOME/sqlite3
$ ./configure --prefix=$HOME/sqlite3
...(略)
$ make
...(略)
$ make install
...(略)
# 動作確認 $ $HOME/sqlite3/bin/sqlite3 --version
3.33.0 2020-08-14 13:23:32 fca8dc8b578f215a969cd899336378966156154710873e68b3d9ac5881b0ff3f

構築したSQLite3を用いたgemの導入

既にシステムのSQLite3を用いて導入したgemがある場合は,それを削除してやりなおす.bundlerに「新しいSQLite3を使うよ」と指示して,gemを導入する.

以下,その手順.これでうまくいくはず.
# 既に導入済みのgemがある場合はいったん削除
# bundle config path vendor/bundle しているという設定
$ rm -r vendor/bundle

# 新規のSQLite3を使うための設定
#($HOME/sqlite3 にインストールした場合.
# そうでない場合は緑字の部分を適宜変更せよ)
$ bundle config build.sqlite3 "--with-sqlite3-lib=$HOME/sqlite3/lib"
$ bundle install
...(略)


2013年11月1日金曜日

「オープンソースソフトウェア実践特論」(東京農工大学大学院,2013年後期)

講義の目的と到達目標

OSSによる開発の基本技術から最新動向まで,演習を交えて学習する.OSS開発の概要を理解し,実際にシステムを構築できるようになることを目標とする.

講義の内容

現代の情報技術開発において基盤的位置付けを占めるまでに成長したオープンソースソフトウェア(OSS)に関する基礎的な要素技術とその開発の仕組みを,具体的な演習を交えて学習する.本講義においてはOSS開発に欠かせない関連技術動向を学習し,最新技術をキャッチアップできるようになるためのスキルを身につける.

講義計画・資料

  1. オープンソース,開発の流れとツール(11/2)
    • 本講義の概要について説明し,オープンソースソフトウェアの開発がどのように行われているかを説明する.
    • 担当: 清水浩行
  2. ソフトウェア開発環境の概要(11/2)
    • ソフトウェアを開発するための環境について,その概要を説明する.
    • 担当: 清水浩行
  3. バージョン管理ツール(11/2)
    • ソフトウェア開発に必須のツールであるバージョン管理ツールを説明し,実際に,バージョン管理の原理を確認する.
    • 担当: 清水浩行
  4. プログラムのデバッグ(11/16)
    • 様々なソフトウェア開発におけるプログラムのデバッグ手法を説明する.
    • 講義資料 PDF
  5. オープンソースの開発ツール(11/16)
    • オープンソースソフトウェア開発でよく活用される開発ツールを説明する.
    • 講義資料 PDF
  6. オープンソース研究の動向(11/16)
    • オープンソース関連の研究分野について,最新の動向を交えてその概要を説明する.
    • 講義資料 PDF
  7. ドキュメンテーションツール(11/23)
    • オープンソース開発におけるドキュメンテーションの重要性を解説し,そのために利用されるツールを説明する.
    • 担当: 清水浩行
  8. 統合開発環境(11/23)
    • 統合開発環境とは何かを説明し,その使い方,オープンソースソフトウェアによる実装例を紹介する.
    • 担当: 清水浩行
  9. 開発フレームワーク(11/23)
    • 開発フレームワークとは何か,その概要を解説し,オープンソースソフトウェアとして利用できるフレームワークを紹介する.
    • 担当: 清水浩行
  10. Linux開発環境におけるソフトウェア開発(11/30)
    • Linux開発環境においてしばしば利用されるソフトウェア開発ツールについて説明する.
    • 講義資料 PDF
  11. ソフトウェア開発ツールの評価(11/30)
    • ソフトウェア開発ツールの導入と利用に関して,どのような観点から評価して選択すべきなのか,その基準について説明する.
    • 講義資料 PDF
  12. ソースコード・リーディング(演習の説明)(11/30)
  13. プログラム開発演習(1)(12/14)
    • 各種のライブラリを利用したオープンソースソフトウェア開発を実際に実施してみる.
    • 講義資料 PDF
  14. プログラム開発演習(2)(12/14)
    • 演習(1)の続き.
  15. プログラム開発演習(3)(12/14)
    • 演習(1)(2)の続きとレポーティングを行う.

講義の進め方

11月から12月にかけて,土曜日の集中講義で実施する.座学および演習を行う.演習では実際にソフトウェア開発を行う.

成績評価

出席50%,レポート50%で評価する.

2013年4月1日月曜日

「Webコンピューティング実践特論」(東京農工大学大学院,2013年前期)

講義の目的と到達目標

WWWの基本技術から最新動向まで、演習を交えて学習する。Webコンピューティングの概要を理解し、実際にシステムを構築できるようになることを目標とする。

講義の内容

現代のネットビジネスを支えるWebコンピューティングに関する基礎的な要素技術と、Webアプリケーションに関する動作の仕組みを、具体的な演習を交えて学習する。またAjax技術やWeb2.0といった新しい概念や、オープンソースソフトウェア、XMLといった最新Webコンピューティングに欠かせない関連技術動向を学習し、最新技術をキャッチアップできるようになるためのスキルを身につける。

講義計画・資料

  1. WWWの基本と仕組み(4/12)
    • WWWの歴史とWWWに必要な要素技術について学ぶ。
    • 講義資料 PDF
    • 担当: 清水浩行
  2. Webの表現技術(1)(4/12)
  3. Webの表現技術(2)(4/12)
    • 動きを実現するJavaScriptとWeb標準を学ぶ。
    • 担当: 清水浩行
  4. アプリケーションの記述言語(4/19)
    • Webアプリを記述する各種のプログラム言語(スクリプト言語)の概要を学ぶ。
    • 講義資料 PPT
  5. Webコンピューティング演習(1)(4/19)
    • 簡単なWebコンテンツの作成を行う。HTMLによる静的なコンテンツの作成とDHTMLによる動的なコンテンツの作成と評価を行う。
  6. Webアプリケーションの仕組み(4/26)
    • Webアプリを構成する仕組みや、関連する概念、開発の概要について学ぶ。
    • 講義資料 PPT
  7. クラウドコンピューティング(4/26)
    • サービス化するコンピューティング環境とその上で動作するWebアプリの関係ついて学ぶ。
    • 講義資料 PDF
  8. Webコンピューティング演習(2)(5/10)
    • Webコンピューティングの一例としてCMSを題材に演習する(システムのインストールと設定)
    • 講義資料 PPT
  9. Webコンピューティング演習(3)(5/10)
    • Webコンピューティングの一例としてCMSを題材に演習する(コンテンツの作成と運用)
  10. オープンソースソフトウェア(1)(5/17)
  11. オープンソースソフトウェア(2)(5/17)
    • Webコンピューティングに不可欠な要素であるOSSについて学ぶ。
  12. Webとリッチクライアント(5/24)
  13. Webアプリケーションの使いやすさ(5/24)
    • ユーザ・エクスペリエンスの向上と、ユーザビリティの重要性について学ぶ。
  14. XML概論(5/31)
  15. オープン性と集合知(5/31)

講義の進め方

4/12から5/31まで、金曜日午前中の集中講義で実施する。座学および演習を行う。演習では実際にシステムの構築を行う。

成績評価

出席50%、レポート50%で評価する。