いけむランド

はてダからやってきました

Cygwin

ruby.wasm on cygwin

これは WebAssembly Advent Calendar 2022 の 9 日目の記事です。*1 RubyKaigi 2022 で ruby.wasm の話を聴いてから、いろいろと触っていたのですが、意外と cygwin native な wasm 実行環境でも動かせたため、手順をまとめます。 *1:WebAssembly に関するブ…

chkbuild 環境を捨てて簡易なシェルスクリプトに移行した

だいぶ前に cygwin (i686, x86_64) 用の chkbuild 環境をつくってみたが、保守がいろいろと面倒になったため、シンプルなスクリプトに置き換えることにした。

setup.exe が古過ぎるとパッケージ操作ができないことに今さら気づいた

appveyor で動かしている ruby-chkbuild がコケてるため、確認したところ、cygwin の setup.exe が古過ぎて、必要なパッケージのインストールができていなかった。

Ruby on cygwin (2022/2月号)

気が向いた時にまとめる不定期連載です。

ctype: use less short names in public header

cygwin.com 今までだと _P のような、ユーザコードでも使われがちなシンボル (_[A-Z]) をマクロとして、グローバルなヘッダで定義してしまっていたため、コンパイル時に展開されて、文法エラーになるようなことが多々あった。 この修正でこの問題が解消され…

SCALLYWAG=deploy によるデプロイ

完全に Cygwin Package Maintainer にしか必要がない情報ですがまとめておきます。

Cygwin Package Maintainer になってみた

一言で言うと、ここに名前が載るようになりました。 https://cygwin.com/cygwin-pkg-maint

Cygport 入門 (ver.2020)

前回 cygport の入門記事を書いてから、また 5 年以上経ってしまったので、最新版に追従した内容で書き直すことにしました。

野良パッケージをつくる時に参考にするサイトまとめ (ver.2020)

「便利なソフトを見つけたが、パッケージがない!」けど /usr/local には入れずにきちんと管理したいという場合には既存の Linux ディストリビューションの設定ファイルを参考にすることが多い。 そういう場合によく探すサイトをまとめておく。

Mac OS X で動く cygwin クロスコンパイラを作成する

以前、試みてから 10 年以上経っていたため、あらためて最新のソースから作成してみることにしました。

GitHub Actions で cygwin を使ってみる

GitHub Actions のホストランナーとして Windows が提供されているため、そこに cygwin をインストールすることで cygwin バイナリを動かしてテストなどをすることができます。

表参道.rb #49 に行ってみた

omotesandorb.connpass.com久々に行ってしゃべってきた。 Ruby on cygwin (2019/8月号) from fd0 www.slideshare.netおしゃれスライドをつくりたかっただけ説はあります。

cygwin で libssl1.0 を使ってビルドする

libopenssl100 が libssl1.0 に変わったため、パッケージによってはリビルドが必要になる。ビルド前に以下の環境変数をセットしておけば、libssl1.0 を使ってビルドしてくれる。 export CPPFLAGS="${CPPFLAGS} -I/usr/lib/openssl-1.0/include" export LDFLA…

vlang を cygwin で動かす

ちょっと前にそのうちソース公開するよと言われていた The V Programming Language が GitHub から取得できるようになりました。github.comというわけでいつもどおり cygwin で動かしてみます。あくまでも記事執筆時 2019/06/27 時点での情報です。vlang は…

Ruby 2.6.3 on x86_64-cygwin

令和とともに Ruby 2.6.3 のバイナリパッケージが cygwin 公式からリリースされたので適当にいじってみた。www.mail-archive.com

表参道.rb #43 に行ってみた

omotesandorb.connpass.comLT 枠が空いていたので飛び込みでやってみました。スライドは用意してなかったので喋りたいことのベースとなる内容を表示したブラウザタブを何枚か用意して、切り替えながら発表しました。

Ruby にコントリビュートした

RubyKaigi で熱的なものをもらった勢いで patch を送ってみたところ、いつの間にか取り込まれてた。

charlock_holmes を bundle install するのに苦戦した

タイトルそのまんまです。 github.com 環境は以下の通り。 $ uname -rs CYGWIN_NT-10.0 2.8.2(0.313/5/3) $ ruby -v ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-cygwin] bundle install すると extension のコンパイルでコケます。 g++ -I. -I/usr…

string table overflow が起きたため CMAKE_C_FLAGS から -g を取り除いた話

この記事は 第2のドワンゴ Advent Calendar 2016 - Qiita の 7 日目 (空いていたので飛び込んだのは 10 日目ですが) です。

calm のインストールと mksetupini

はじめに cygport が 0.23.0 になった時に既存の genini が使えなくなるという問題に遭遇した。原因は cygport が生成する hint のファイル名が固定の setup.hint から変わってしまったことによるもので、genini は setup.hint 固定されている前提の処理であ…

cygepoll - epoll emulation on cygwin

cygwin で epoll のインタフェースが使えるようなライブラリを書いてみました。github.com

cygwin ports を書くなら atom でどうぞ

*.cygport を atom で開くと shell の syntax highlight になるように出した pull request が merge されたよ! Update shell-unix-bash.cson by fd00 · Pull Request #8 · atom/language-shellscript · GitHub

xezat - complement of cygport

cygport や CYGWIN-PATCHES/README をいい感じに生成したり、パッケージに変なデータが残ってないかとか調べたりするやつを書いてみた。gem も勉強がてらにつくってみた。 xezat | RubyGems.org | your community gem host README.md が欲しいという奇特な i…

archey-cygwin を書いてみた

Archey という簡単なシステムの情報とディストリビューションのロゴを表示するユーティリティがある。 GitHub - djmelik/archey: Archey is a system information tool written in Python. これは python で書かれているのだが、homebrew からだと別の人が書…

cygwin のダウンロードサイトのディレクトリ構成が変わった

半月ほど前に setup.exe が新しくなったよというアナウンスがされてたのをスルーしてました。 Although it is not strictly necessary, it is a good idea to clear out your download directory prior to running these programs. The new setup exe's crea…

Github Pages を cygwin binary package repository にしてみる

gh-pages に setup.bz2 とバイナリパッケージツリーを置いて setup.exe から見えるようにしたら package repository にできるんじゃないかと思ったので、ImpArt » github-pageつくってみた に書いてあるとおり gh-pages ブランチを push したら setup.exe か…

Eclipse から Cygwin を起動する

Eclipse を全画面で使っている時に Cygwin のコマンドを叩こうと思って、前面に持ってくると、今度は参照しようと思ってた領域に出てきてしまって、マウスで Cygwin のターミナルを移動させる手間が発生して、ストレスで(」・ω・)」うー!(/・ω・)/にゃー…

新・unable to remap が rebase で解決しなかった時の話

近頃のパッケージツリーでは setup.exe で新しい lib*.dll がインストールされると、ほぼ確実に autorebase が postinstall で動いてしまい、どの都度 unable to remap 地獄に突入することになる。 前回 offset がぶっ壊れた DLL を再インストールして、丁度…

続・unable to remap が rebase で解決しなかった時の話

前回の対応からしばらく起きていなかったが、ちょっと前から再発するようになってきたので、いろいろ追加調査してみた結果をまとめる。 unable to remap が rebase で解決しなかった時の話 - BOOLEANLABEL

非アーカイブからパッケージにする時の HACK

実は 0.10.9 現在の cygport では想定するソースはアーカイブである必要があるという制限がある。具体的に言うと、hoge.c みたいな単体のソーステキストからパッケージにするには少し HACK が必要となる。