使っているビルドシステム
投票結果を表示しています。
Visual Studio
|
255 票 / 27% |
合計 921 票
投票所 |
他の国民投票
- 選択肢が少なくても文句禁止。だって、そもそもがジョークだし、場所は有限だし、選択肢を決めるのに事前投票なんてできないから。
- なんか良い投票ネタがあったら是非タレコんでくれ(国民投票用と明記)。毎回かなり悩みまくりなんだな、これが。ぶつぶつ言わずに助けてくれよぅ。
- この投票はとってもテキトーだ。四捨五入の誤差、投票マニア、ダイナミックなIP、 システムのバグ、プロキシーやファイヤウォールなんて考慮しちゃいない。統計だと思って このデータを大事な事に流用しようと思うなら小学校からやり直しましょう。
処理中...
Hudson (スコア:3)
Hudsonいいですよ。
定時ビルド機能を使うと、常に最新版でビルドし、エラーレポートを飛ばせる。
ローカルに最新版を取り込む前に、ビルドエラーの出るコミットに気付けます。
多人数・複数社チームでやってると、結構エラーの出る状態でコミットしちゃう人が居るので助かります。
Re:Hudson (スコア:1)
> 定時ビルド機能を使うと、常に最新版でビルドし、エラーレポートを飛ばせる。
イイネ!
Autotoolsのプロジェクト
http://loto.sourceforge.net/feram/ [sourceforge.net]
http://loto.sourceforge.net/feram/Autotools-memo.ja.html [sourceforge.net]
なんですが
* 毎晩深夜3時に
* ソースの置いてあるディレクトリに行って
* $ svn up
* $ autoreconf -v
* $ mkdir 2014-06-29 # build directory
* $ cd 2014-06-29
* $ ../configure
* $ make -j10
* $ numactl --cpunodebind 0 make check # いまはチップを跨ぐと遅くなっちゃう
* レポートのメールを test-suite.log, `head *trs` とともに送る
ってのを計画してます.
たぶんshell scriptを書けばよいと思ってますが,
よりよい方法がありましたら教えて下さい.
love && peace && free_software
t-nissie
Re: (スコア:0)
Jenkinsに移行しなかった理由ってどんなのがあるのか気になります。
CIツールの上でビルドツール使うからオフトピのような
Re: (スコア:0)
別人だけど。
余程凝ったビルドしてるんじゃなければ一度動いちゃえばあえてアップグレードする必要ないよね。
殆どの人の使い方ってWeb GUIとメール機能付きCron程度じゃないだろうか。
Re: (スコア:0)
同じこと思った。
Hudsonを人に勧めるならJenkinsって言うべきじゃないかと。
Re: (スコア:0)
Jenkinsって言う「べき」とまで言う理由が気になります。
アレゲな人間は当然Oracleを嫌うべきであるという同調圧力?
Re:Hudson (スコア:3)
既存の開発コミュニティがJenkinsに移ってしまったし(旧)Hudsonを立ち上げた川口耕介さんもJenkinsへ移っているので、新規で現行Hudsonを使う理由が皆無ですね。サポートがほしければ川口耕介の会社(CloudBees)が商用サポートを提供してます。
Oracleが好き嫌いとかではなく、本当にHudsonとJenkinsを比較してHudsonを選ぶ理由が見当たりません。
maven少ないな (スコア:2)
自社がほぼmavenなのでちょっと意外。
Javaの開発だとantの方が主流なのかな。
Re:maven少ないな (スコア:2)
AntとMavenを比較してもMavenが少ないですね。
Mavenは確かに設定が複雑な部分もありますが、凝ったことをしない限りは結構きれいにいけるしMavenからEclipseなどIDEの設定もはけるので気に入っています。あと、Mavenを使うことで(デフォルトの規約を変更しない限り)ディレクトリ構成が自動的に決まり、あとで見て理解しやすいのもいいですね。
まあ、でもいまどきだとGradleとかになるのかな、とか。
# でも、今のプロジェクトは既存の基盤を引き継いだので複雑なAnt+独自スクリプト。
Re: (スコア:0)
mavenいいんだけど、ちょっと記述とかが面倒臭いんだよねぇ
最近だとgradleがいいんじゃないかな
Re: (スコア:0)
sbtなので裏側はmavenかなぁ
Re: (スコア:0)
ライブラリの依存性解決にivyは使っていてもmavenは使ってないんじゃないかな
ビルドシステムて (スコア:1)
と思ってビルドシステムでググったら、株式会社ビルドシステムが検索結果のほとんどを占めていました
/.jで検索してもスラドが出ないからbingはダメなんだよ
Re:ビルドシステムて (スコア:1)
鋼鉄ジーグのOPみたいに、バラバラババンバンとビルドアップしてくれるようなシステムがあればなあ
Re:ビルドシステムて (スコア:1)
#年齢不詳ということでお願いします
/.jで検索してもスラドが出ないからbingはダメなんだよ
Re:ビルドシステムて (スコア:1)
そういやあ、マジンガーZもマニピュレーターである手を武器(ロケットパンチ)としてを放ってしまって
どうしようもなくなってアタフタするシーンがあったなあ(遠い目
#もう歳は仕方ないから、あかるくいこうぜ! (涙
VS (スコア:1)
個人的にはMSBuildを併記してほしかった。
# クラウド上でビルド->テストする系(CI)は失敗でのリトライ(最初のころのトライ&エラーで)がめんどうだけど、後々ラクだよなぁ...
最近はGradleが気になる。
M-FalconSky (暑いか寒い)
Re:VS (スコア:1)
ついでにVCBuildも併記で。(オワコンだけど)
Re: (スコア:0)
もうnmakeってないんでしょうか。
#ここ数年以上VC++使ってないなぁ
Re:VS (スコア:1)
といっても、もうMakefile書けなく立ってしまったかも...
jom.exe (スコア:1)
開発環境はWindows上でQtCreatorを使ってます。
Re:jom.exe (スコア:1)
Qtのビルドシステムはqmake [qt-project.org]
jom [qt-project.org]はnmakeのクローンで自動生成したMakefileを実行するだけ。
qmakeはMakefile以外にQObject実装用のC++のソースファイルも出力するから、他のビルドシステムではビルドできないはず
Re:jom.exe (スコア:1)
そういや、選択肢にmakeとcmakeがあるけど、これもレイヤが違いますよね。
configure なんてもういらないよね。 (スコア:1)
patch や perl4 で configure を目にした時にはすごいな、と思ったけど、今どきの UNIX variant なんてほとんど posix 準拠になっていると思うので、configure なんてもういらないよね。時間と電気の無駄。
(反論は受け付ける :-)
Re:configure なんてもういらないよね。 (スコア:1)
個人的には、もっと極端に「configureは廃止するべき」だと思ってる。
現在のセキュリティ的状況から見て、「自力で環境設定出来ない様な奴に、ソースからビルドする資格なんて無い」と言い切ってしまおう。
無論極論なのは承知。
-- Buy It When You Found It --
Re: (スコア:0)
configure から pkg-config 呼ぶんだったら Makefile から呼んでも同じだよね
Re: (スコア:0)
Makefileで環境・コンパイルフラッグのチェックなんて、やめてくれ。
それはGNU Autotools [wikipedia.org]でやってほしい。
Makefileは、ビルド手順の記載に終始すべき。
Re: (スコア:0)
AutoconfやAutomakeは何であんなにややこしいシステムなのか、
当時から理解できなかったが、今や理解する必要もなくなってしまった。
えー、素の Makefile なんて面倒臭くて書いてらんないし。 (スコア:0)
Tutorial がイマイチ整備されてないから、とっかかりが面倒なのは認めるよ。
でも、導入の手順こそ
autoscan 実行した後 configure.ac を編集
Makefile.am の作成
aclocal, autoheader, automake, autoconf を順に実行
と若干煩雑さはあるものの、
Makefile.am の記述は素の Makefile に比べれば天国でしょ。
Automake はそんなにややこしくない。
Autoconf と言うか、configure.ac とか configure.in がややこしいのは M4 のせいだと思う。
祖コメにあるposix 準拠になってるから不要ってのもちょっと違うと思う。
Build 環境に VC なんかも含めるなら CMake のが楽な場合も多い
Re:えー、素の Makefile なんて面倒臭くて書いてらんないし。 (スコア:1)
> aclocal, autoheader, automake, autoconf を順に実行
いまはautoreconfで自動化されています.
autogen.shを書くっていうマナーも過去のものみたいです.
love && peace && free_software
t-nissie
Re: (スコア:0)
autoreconf は気付いてなかったので早速試してみたら、
touch NEWS README AUTHORS ChangeLog
こそ必要なものの、
> aclocal, autoheader, automake, autoconf を順に実行
ってのは
autoreconf -i
だけで済んでしまった。
情報ありがとうございます。
Re:えー、素の Makefile なんて面倒臭くて書いてらんないし。 (スコア:1)
Makefile.amにAUTOMAKE_OPTIONS = foreignと書いておけば
touch NEWS README AUTHORS ChangeLog
は不要かも.Please see info of automake.
love && peace && free_software
t-nissie
mxe(オフトピ) (スコア:0)
って、どう?
http://mxe.cc/ [mxe.cc]
Re: (スコア:0)
これは、知らなかった。
クロスコンパイル用の環境を構築するためのツールなのか。
既存のコンパイラやライブラリで有名どころは、ほとんどこれでまかなえそう。
上で書いたのは、
自分で書いたプログラムを cygwin1.dll なしで動くよう
Cygwin 上で MinGW でコンパイルするって話だったんだけど、
ライブラリ準備するのが大変だったので、この情報はかなり有益かも。
ありがとうございます。
お約束 (スコア:1)
i don't know how to make 'love'
Re: (スコア:0)
$ make love
Segmentation fault(core dumped)
--もてない君
http://r-2ch.com/t/unix/1038491187/#243 [r-2ch.com]
Re: (スコア:0)
ソースも何もないのにビルドできるわけないじゃない。
ビルドシステムとは + 関連リンク + GNU Autotoolsで一部テストを選択的に繰り返す方法 (スコア:1)
タレコミを国民投票として採用いただきありがとうございます.
ビルドシステム≒ソフトウェアのビルド、ファイルの依存関係の自動調整、テスト、パッケージ化などのツールを集めたもの,
ってかんじでしょうか.だからmakeというよりGNU Autotoolsとか.
関連リンク(多すぎると投稿できないみたい.CMake, Rake, GNU Autotoolsなどは省略.)
Apache Maven http://maven.apache.org/ [apache.org]
Hudson http://hudson-ci.org/ [hudson-ci.org]
Jenkins http://build-shokunin.org/ [build-shokunin.org]
SCons http://www.scons.org/ [scons.org]
Ninja https://github.com/martine/ninja [github.com]
MXE http://mxe.cc/ [mxe.cc]
sbt http://www.scala-sbt.org/ [scala-sbt.org]
ビルドシステムなどのリスト http://en.wikipedia.org/wiki/Category:Build_automation [wikipedia.org]
過去の議論 http://developers.srad.jp/story/11/06/10/0048219 [srad.jp]
【蛇足】GNU Autotools の裏技:
一部のテストを選択的に繰り返したい場合は
とTESTS変数で指定します.
love && peace && free_software
t-nissie
Re: (スコア:0)
まるでビルドスクリプトみたいにゴチャゴチャしたコメントですね
dkms (スコア:0)
ブログラマーじゃないし
でもたまに、dkmsが
ひっそりとmakeとかやってるような気はする。
ビルドシステム (スコア:0)
恥ずかしながらビルドシステムという言葉を初めて聞いた
基本的にはプロセッサメーカーが無償提供している統合開発環境/コンパイラをそのまま使う
パソコンでプログラミングするならBCC DeveloperとBorland C++ 5.5だな(数値計算しかしない)
嫌々Windowsアプリを作るときはDelphiかFreeBASICだから、Visual Studioの出番はほとんど無い
Re: (スコア:0)
> パソコンでプログラミングするならBCC DeveloperとBorland C++ 5.5だな(数値計算しかしない)
つ C:\borland\bcc55\Bin\make.exe
Re: (スコア:0)
使っているビルドシステム?
工事屋さん?協力企業に無いなぁ。
「ビルドシステム」って固有名詞ですよね。
sbt (スコア:0)
今回の案件で初めて使用したが、なかなかいい感じである。
部下 (スコア:0)
「リリース準備よろしく」というと、
コード修正からデバッグ、テストにリリース準備まで完了するという素敵なシステムです。
時々ビールを注がないと、バグを埋め込んだりします。
ビルドって (スコア:0)
モラード・カーバイト公作のファティマかな。
ここはユーザー偏ってるからな (スコア:0)
最近流行ってると噂の偏愛マップ [note.mu]見ると
プログラミングなんて全然出てこねーよヽ(`Д´)ノ
Re:素人が購入することは考えにくい専門的なソフト (スコア:2)
「素人が購入することは考えにくい」というのは、間違っているとはでは言わないけど、
その理由が「専門的なソフト」だからかというとそれは間違いだろ?
明らかに価格の問題。
あれが1万円くらいだったら、これからプログラミング始めようという素人がこぞって購入してもおかしくない。
uxi
Re:素人が購入することは考えにくい専門的なソフト (スコア:1)
>あれが1万円くらいだったら、これからプログラミング始めようという素人がこぞって購入してもおかしくない。
無料のExpressがあるのに?
Re:どれもこれも気に入らないんだよなあ (スコア:1)
クサす先を間違えているんじゃないかな、と。
問題は、ソフトウェアパッケージにあるんじゃありませんよ。 標準的なビルドツールがない (あるいは OS なり開発環境なりに添付されていない) ことに起因するんです。
まずは歴史的な経緯から。
1980年代〜1990年代アタマくらいまでは、ビルド用の Makefile とか *.bat とかを添付してくれて、ダウンロードしたら大体そのままビルドできるよう意図されたオンラインソフトが結構あったのですが、それって「貴殿の開発環境も俺様と同じ」前提なわけです (そして C とか使ってると、そんなの殆ど成り立ちません。 例えば「X.h ってどこにある?」 「/usr/include/X11? /usr/X11R5/include? /usr/dt/include? /usr/openwin/include?」とか。 あるいは「お前さんの OS、unistd.h あるんだっけ? それとも dos.h 使えばいいんだっけ?」とか。 あるいは「俺様のコンパイラは lcc.exe なのであるが、貴様のは cl.exe であるか tcc.exe であるか」とかとかとか。 時代が下って Java とかスクリプト言語だと環境の違いは比較的マシになるのですが)。 その結果、imake が出来たり、configure が付くようになったり、色々したりして今に至るというわけです。
それに、Windows 向けの開発ならどうせ Visual Studio と心中することになるでしょう (え、embarcadero [embarcadero.com] ですか? 敢えてそんなの使ってるなら自力で何とかできる人でしょ?)。 Unices 向けの開発なら最低限 make を使えることが分かっているので、可搬性を重視するなら make を使うか Makefile を吐き出す何かを使うようなパッケージにするでしょう。 実際、それが多数派です (まあ、たまに Jam 使ったりする例 [boost.org]もあるけど)。
なので、「ダウンロードしてすぐビルドできない」なんてのは、1990年代後半には少数派になりつつあったのです。 ところが、その前後に Java が流行るようになると、また少し状況が変わって来ます。
Java には「これが決定版」と言えるビルドツールがなく (敢えて言うと ant [apache.org] が近いかな)、開発側がワリと自分の好みで選択できる、群雄割拠状態になってしまいました。 まぁ、Java のウリは「一度書けばどこでも動く」なので、「そもそもビルドが面倒とか言う奴がソースコードなんかダウンロードするなよ。バイナリそのまま動かせばいいじゃん」と言えてしまうのですが。
# そういう意味では、ソースコードだけリリースしてバイナリを
# リリースしないソフトウェアプロジェクトに対しては、
# 「Java の利点を生かしてない」と文句を言えるかも知れない。
JDK に標準 (必要最低限度の) ビルドツール付けてくれればいいのにね、OpenJDK [java.net] とかどうしてるのかな、と思ったら「make 使え [java.net]。 え、Windows なんか使ってんの? Cygwin [cygwin.com] か MinGW [mingw.org] で代替すりゃいいだろ」ですか、そうですか...