読者です 読者をやめる 読者になる 読者になる

decode

技術ブログ 本の紹介

Nacl様インターン4日目

こんにちは、kawasakikouです。4日終わってしまいました、1/3ですね、

今日やったこと

macでsmalrubyのプログラムが実行できることの確認(rsdl が動くことの確認)

結局何故かsmalrubyのスクリプトが実行できず、なんでだろうな〜と思っていたら、もはやMacportsとHomebrewの存在自体が競合してやばそうな気がしてきたのですぐさまportをアンインストールしました、
今まではportとbrewの存在自体は別にあってもいいけど、同じライブラリを突っ込むとPATH的にヤバイと思っていました。もはや存在がヤバイらしいです。要調査。Macportsをマジで知らない。

んで、brewを用いた場合、
dxruby_sdlをmakeしようとすると、

f:id:kkou0801:20150725014541p:plain

みたいな感じで言われてつらいなぁって感じでした。

その際

kousmac% brew list | grep sdl                                                                                                
sdl
sdl2
sdl_image
sdl_mixer
sdl_sound
sdl_ttf

sdl2ってなんだ??って思ったので、brew uninstallしてあげるとすんなりmakeが通る。
わろたなぁ、わろた。


んでその後、rsdlコマンドでsmalrubyスクリプトを実行すると、

Library not loaded: /usr/local/lib/libpng16.16.dylib (LoadError)
Library not loaded: /opt/local/lib/libsmpeg-0.4.0.dylib (LoadError)


$ brew install libpng smpeg

こんなエラーが出るので、そんな感じでうまくいきます。

game_server の shutdown 対応

普通にGameServer#shutdownを定義してあげるとうまくいきました。
ちゃんと定義してあげないとCtrl-cでシグナル送ってもNo method errorでした。

# encoding: utf-8

require "webrick"
require 'json'
require 'logger'

require_relative '../lib/exceptions'
require_relative '../lib/game/player'
require_relative '../lib/game'
require_relative '../lib/game/enemy'
require_relative '../lib/game/dijkstra_search'
require_relative '../lib/api/base'
require_relative '../lib/api/manage'
require_relative '../lib/api/move'
require_relative '../lib/api/search'
require_relative '../lib/api/viewer'

LOGGER = Logger.new(File.join(File.dirname(__FILE__), "..", "log", "game.log"))

# ゲームサーバクラス
class GameServer
  # ビューア用のBASIC認証情報
  VIEWER_ACCOUNT = "viewer"
  VIEWER_PASSWORD = "passw0rd"

  def initialize(port = 3000)
    @server = WEBrick::HTTPServer.new(
      BindAddress: '127.0.0.1',
      DocumentRoot: File.join(File.dirname(__FILE__), '..', 'public'),
      Port: port)

    @server.mount Api::Manage::API_PREFIX, Api::Manage
    @server.mount Api::Move::API_PREFIX, Api::Move
    @server.mount Api::Search::API_PREFIX, Api::Search
    @server.mount Api::Viewer::API_PREFIX, Api::Viewer
  end

  # ゲームサーバ用Webrickの起動
  def start
    @server.start
  end

  # ゲームサーバ用Webrickの終了
  def shutdown
    @server.shutdown
  end
end

今日は今回のインターンのサポートをして下さるITインターンシップ事務局の方が見えられて、ケーキを買って来て下さいました。



それで担当の方と呼ばれてなんだろう、って思ってたら、「どんな感じよ〜〜笑」みたいなノリでケーキをネタに一時間ほどリラックスしてインターンのお話をしました。

なんというか、Naclさんで働く人達って仕事!としてやっているんじゃなくて、楽しそうに働いてる様に思えます。
プログラマも自由、経営も自由。
すごく働きやすそう(実際楽しい)な環境なので、すげぇなぁ...って思います。

プログラマは強い方が勢揃いしているし、とりあえず東京より田舎なので、スローライフ

めちゃくちゃ最高な環境でうああああああって感じます。本当に最高。


とりあえず4日経ちました。明日から2日休日です。

完全週休2日制。最高。来たら嫌がられるらしい。(でもデスマーチの時は来るらしい)

気を抜かず、できるだけ多くのものを吸収して帰れる用頑張ります。

広告を非表示にする