LoginSignup
5
2

More than 1 year has passed since last update.

技術書「Rubyソースコード完全解説」 と 「docker で ruby」構築。docker(148)

Last updated at Posted at 2021-08-02

今まで買ってよかった技術書を紹介しよう!
https://qiita.com/official-events/d409f91fc8b9b44cefb4
の企画に参加する記事です。

Docker上のみでシステムを作るときの構成
https://qiita.com/official-events/339b6440dbd578f4f66f
参加記事です。

協賛企画

bookmeterで協賛企画をはじめました。
今まで買ってよかった技術書を紹介しよう!
https://bookmeter.com/events/8648

参加18人
検討中32人
合計 50人の登録がありました。
記事は2つ。

ありがとうございます。

20210806限座、本家が41人。
お、やったね。

記事は11。
あ、負けたね。

そうじゃない。

技術書は、紹介してもなかなか反応がなく、嫌気が指すかもしれません。
amazonに1万冊感想を書くという目標を立てたとき、技術書ばかりを書いていて、
反応がほとんどなく、底なし沼に石を投げているような感覚に襲われたことがあります。

そこで5つの手を打ちました。

1つは、芥川賞、直木賞を読むことにより、文学の投稿をするようにしました。
芥川賞、直木賞を読む コミュニティ
https://bookmeter.com/communities/332458
芥川賞、直木賞を読む イベント
https://bookmeter.com/events/786

2つめは、オフライン行事に参加することでした。
2013年4/10 【第19回 名古屋de朝活読書会】
https://bookmeter.com/events/150

3つ目は、オンライン行事に参加することでした。
新潮文庫夏の100冊2014を読破しよう!
https://bookmeter.com/events/1399

100冊まとめては結構捗る。

4つ目は、オンライン行事を主催することでした。
第1回お茶(緑茶・紅茶・烏龍茶)を飲みながら読書会
https://bookmeter.com/events/1310

5つ目は、絵本に焦点を絞ったことでした。
【読メ絵本部】
https://bookmeter.com/communities/334325

これは、小坂井大輔さんが主催されていた朝活読書会で絵本の紹介があったときに、
かこさとし が、技術士だということを知ったのに衝撃を受けて、かこさとしの
絵本の全部読み(紙芝居以外は完読)しようとしたことによります。

Rubyソースコード完全解説

Rubyソースコード完全解説(html版)
https://i.loveruby.net/ja/rhg/book/

ご紹介に基づいて拝見しました。

ruby / ruby @ gitnub
https://github.com/ruby/ruby

bash
$ docker run -it gcc /bin/bash

How to compile and install
If you want to use Microsoft Visual C++ to compile Ruby, read win32/README.win32 instead of this document.
Run ./autogen.sh to generate configure, when you build the source checked out from the Git repository.
Run ./configure, which will generate config.h and Makefile.
Some C compiler flags may be added by default depending on your environment. Specify optflags=.. and warnflags=.. as necessary to override them.
Edit include/ruby/defines.h if you need. Usually this step will not be needed.
Optional: Remove comment mark(#) before the module names from ext/Setup.
This step is only necessary if you want to link modules statically.
If you don't want to compile dynamic extensions (probably on architectures which do not allow dynamic loading), remove comment mark from the line "#option nodynamic" in ext/Setup.
Usually this step will not be needed.
Run make.
On Mac, set RUBY_CODESIGN environment variable with a signing identity. It uses the identity to sign ruby binary. See also codesign(1).
Optionally, run 'make check' to check whether the compiled Ruby interpreter works well. If you see the message "check succeeded", your Ruby works as it should (hopefully).
Run 'make install'.
This command will create the following directories and install files into them.

${DESTDIR}${prefix}/bin
${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}
${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}
${DESTDIR}${prefix}/lib
${DESTDIR}${prefix}/lib/ruby
${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}
${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}
${DESTDIR}${prefix}/lib/ruby/site_ruby
${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}
${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}
${DESTDIR}${prefix}/lib/ruby/vendor_ruby
${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}
${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}
${DESTDIR}${prefix}/lib/ruby/gems/${MAJOR}.${MINOR}.${TEENY}
${DESTDIR}${prefix}/share/man/man1
${DESTDIR}${prefix}/share/ri/${MAJOR}.${MINOR}.${TEENY}/system
If Ruby's API version is 'x.y.z', the ${MAJOR} is 'x', the ${MINOR} is 'y', and the ${TEENY} is 'z'.

NOTE: teeny of the API version may be different from one of Ruby's program version
You may have to be a super user to install Ruby.
If you fail to compile Ruby, please send the detailed error report with the error log and machine/OS type, to help others.
Some extension libraries may not get compiled because of lack of necessary external libraries and/or headers, then you will need to run 'make distclean-ext' to remove old configuration after installing them in such case.

bash
# git clone https://github.com/ruby/ruby.git
Cloning into 'ruby'...
remote: Enumerating objects: 507408, done.
remote: Counting objects: 100% (1352/1352), done.
remote: Compressing objects: 100% (788/788), done.
remote: Total 507408 (delta 595), reused 1220 (delta 541), pack-reused 506056
Receiving objects: 100% (507408/507408), 244.97 MiB | 4.30 MiB/s, done.
Resolving deltas: 100% (388985/388985), done.
# cd ruby
# ./autogen.sh
# ./configure
checking for ruby... false
configure: error: cannot run /bin/bash tool/config.sub

いまここ。

新人

新人の方によく展開している有益な情報
https://qiita.com/kazuo_reve/items/d1a3f0ee48e24bba38f1

新人(学生)を指導するよりも新人(学生)に指導してもらった方が効率的。仮説・検証(139)
https://qiita.com/kaizen_nagoya/items/db993b1536055029f7c8

Ruby

ディスク空き容量を取得するFluentdのプラグイン作った
https://qiita.com/nomunomu0504/items/ab8d3098f5fffd380202

新人

マネージャ・リーダーの私にとって有益な知見が得られた書籍

新人の方によく展開している有益な情報

新人(学生)を指導するよりも新人(学生)に指導してもらった方が効率的。仮説・検証(139)

#参考資料(reference)

第11回 TOPPERS活用アイデア・アプリケーション開発コンテスト

ひょっとしたら、この部門への投稿の表題を変えて、コンテストに応募するのも手かも。

TOPPERS のAUTOSARへの貢献(更新中), AUTOSAR(15)

AUTOSARとSimulink: Adaptive Platform, Classic Platformとマルチコア対応を含めた共通化を目指して

TOPPERS の AUTOSAR への貢献 II (改定中)

人生で影響を受けた本100冊。Youtube(3)

今まで書いてよかった技術書を紹介しよう!

あなたもdocker, 私もdocker

情報工学の専門家に読んで欲しい月刊「技術士」の記事544
https://qiita.com/kaizen_nagoya/items/29ea1465cc228de17ca6

開発環境を豊かにする開発事例 過去・現在・未来
https://qiita.com/kaizen_nagoya/items/d9bf0c2c671fe7f1c749
Microsoftとの歴史 Cコンパイラを中心に
https://qiita.com/kaizen_nagoya/items/d7c0cc257e99de0573cf
Qiitaエンジニアフェスタ_ブラウザ選手権
https://qiita.com/kaizen_nagoya/items/98c4c7f911aa47465087
Qiitaエンジニアフェスタ_StaticWebApps に参加するまで
https://qiita.com/kaizen_nagoya/items/1a1f53926325d872821f
TOPPERS ソースを積み上げよう
https://qiita.com/kaizen_nagoya/items/65c15aed086f2da0928d

<この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。>

文書履歴(document history)

ver. 0.01 初稿  20210812
ver. 0.02 ありがとう追記 20230504

最後までおよみいただきありがとうございました。

いいね 💚、フォローをお願いします。

Thank you very much for reading to the last sentence.

Please press the like icon 💚 and follow me for your happy life.

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2