2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

Linuxって実際の所バイナリ互換どれくらいあるの?

1 :login:Penguin:2010/08/07(土) 12:33:10 ID:HOUzCUqS.net
原則としてディストリやバージョンが変われば
再コンパイルする必要があるってのはわかる。

でも実は再コンパイルしなくても動いたりするんじゃないか?
世の中にはソースを公開できないアプリがある。

そういうアプリを作っている会社がいちいち各ディストリや
各バージョンに対応するのは手間がかかる。
結果、自分のディストリ・バージョンに正式対応していないが
実は結構動くんじゃないかって疑問になった。


2 :login:Penguin:2010/08/07(土) 15:15:26 ID:1Jvm72QN.net
原則として動くんじゃないの
firefoxとかどこでも動くじゃん

3 :login:Penguin:2010/08/07(土) 16:42:53 ID:5/k+nPMk.net
時間の経過でglibcとかlibstdc++のABIや定義シンボルが変わって
動かなくなったことはあった。あとは使ってる共有ライブラリ名の
参照名が違っててロードできないとか。

だからバイナリ互換性にこだわるならstatic linkするしかない。
最近だと良くなってる気はするので、「いまどき」の環境で「いま」
リリースするバイナリが概ね動けばいいだけならおおよそ動くと思うけど。

4 :login:Penguin:2010/08/07(土) 16:48:57 ID:Wbz29qLG.net
どっちかと言うとファイルの置き場所とか

5 :login:Penguin:2010/08/07(土) 16:55:04 ID:5/k+nPMk.net
VMwareみたいにlibX*を同梱する強者もいるよな。
そこまでするなら仮想マシンイメージで配布…無理か。


6 :login:Penguin:2010/08/07(土) 17:31:39 ID:koj7zGLp.net
>>5
仮想イメージでってのは単体のアプリではあまり聞かないけど、アプライアンス方面では
増えてきてるよ。インストール調整費用が価格と稼動までの日数を押し上げてて
競争力の低下要因となっているからね。



7 :login:Penguin:2010/08/07(土) 17:56:20 ID:Wbz29qLG.net
>>6
アプライアンスなのに。

8 :login:Penguin:2010/08/07(土) 21:11:41 ID:koj7zGLp.net
>>7
アプライアンスは別に専用設計のH/Wって訳じゃないから。
特に適用業務ごとにスケールが大きく異なる場合、ベースは汎用のPCを
使うことはよくある。


9 :login:Penguin:2010/08/07(土) 21:13:24 ID:Wbz29qLG.net
>>8
アプライアンスなんだからH/W決め打ち出来るじゃん。

10 :login:Penguin:2010/08/07(土) 21:55:32 ID:koj7zGLp.net
VMに決め打ちしてるんだよ。


11 :login:Penguin:2010/08/08(日) 03:59:16 ID:JFg4OQV1.net
Ubuntuも結局はDebianとのバイナリ互換性が維持され続けてるな

12 :login:Penguin:2010/08/08(日) 05:23:57 ID:VfEk8p6m.net
よっぽどコアな部分叩いてるんでもなければ普通にバイナリ互換だろ

13 :login:Penguin:2010/08/08(日) 08:31:45 ID:geaaqDTz.net
>>12
ppc向けのバイナリ

14 :login:Penguin:2010/08/09(月) 17:30:00 ID:UJihUaW7.net
普通って言うほど安心はできない。
ビルド環境のライブラリとバージョンが違ってトラブルとかあるし。


15 :login:Penguin:2010/08/11(水) 02:45:31 ID:b1tKiAvX.net
バイナリ互換があれば、どのディストリ、どのバージョンでも
アプリが使えるから、アプリのポータブル化して
あちこちに設定ファイルごとアプリもっていけるのにね。

16 :login:Penguin:2010/08/11(水) 02:49:20 ID:utUc9ZtP.net
もうそのあたりは仮想化におまかせで、/ 以下をまるごとパッキングに
なるのかなー。

それをLXCとかの下でカーネルだけ共通で動かすもよし、KVMで
カーネルから分離して動かすもよし。


17 :login:Penguin:2010/08/11(水) 06:43:18 ID:VJZTets2.net
>>15
実際にはもっと色々障壁なくね?

18 :login:Penguin:2010/08/14(土) 07:13:45 ID:qICt4taZ.net
まーでも実際問題市販アプリケーションってバイナリで出てくるからね

19 :login:Penguin:2010/08/14(土) 14:01:27 ID:qH5VfF25.net
>>17
kernelやglibcに限らず、依存してるさまざまなライブラリなんかのバージョンとかな。


20 :login:Penguin:2010/08/15(日) 15:46:36 ID:MY9+Dx/W.net
system callはあまり変わっていないんだっけ?POSIX互換に限らず…

21 :login:Penguin:2010/08/15(日) 20:56:25 ID:gZmgfHax.net
システムコールはむしろLinuxがPOSIX非準拠だったのを細々と直してる。
でもそんな細部に依存してるアプリはまずないだろう。

22 :login:Penguin:2010/08/15(日) 21:38:23 ID:ngyjZRgI.net
glibcが怖いんだな。

23 :login:Penguin:2012/01/06(金) 13:32:03.63 ID:uzLKDeKI.net
パッケージマネージャでNixが普及してくれればバイナリ互換性とかライブラリ互換性気にしなくて良くなりそうだけどどうなんだろ

24 :login:Penguin:2012/01/07(土) 01:39:21.08 ID:beKb6oif.net
使っているglibcの--enable-kernelオプションが
違うだけでもバイナリ互換性が無くなる。

例えば最近のFedoraのglibcは--enable-kernel=2.6.32で
コンパイルされているので、このglibcは勿論、この
glibcを使ってコンパイルされたバイナリもkernel 2.6.32未満では
動かない。

$ file /bin/ls
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs),
for GNU/Linux 2.6.32, <======
BuildID[sha1]=0xaad547afe804114c881db3ca6e337794431b93f4, stripped

(RHEL 5.xのバイナリはRHEL 6.xで動く可能性が
あるが、RHEL 6.xのバイナリはRHEL 5.xでは動かない)

25 :login:Penguin:2013/06/28(金) 18:55:46.37 ID:Wp3uy5Ya!.net
てs

26 :login:Penguin:2013/06/28(金) 18:59:09.55 ID:f9zULtqn.net
>>25
test
http://engawa.2ch.net/test/read.cgi/linux/1341351394/

27 :login:Penguin:2013/07/22(月) NY:AN:NY.AN ID:JZcRzacr.net
test

28 :login:Penguin:2013/07/26(金) NY:AN:NY.AN ID:5EV2/IJp.net
漢なら潔く拡張命令モリモリ利用

バイナリ互換性なんて気にしないぜ!

29 :login:Penguin:2013/07/31(水) NY:AN:NY.AN ID:HcSnofK9!.net
同じディス鳥であっても、ディス鳥のバージョンごとにバイナリが公開されているから
バイナリ互換は最低だね。
ソースを公開して、ある程度人気が出て、ディス鳥側に常にメンテしてもらわなければ
ソフトを作っても誰にも使われることがない。
個人でソフトを作って配布とかできないシステム。
決まりきったディス鳥認定ソフトしか使うことができないのさ。

30 :login:Penguin:2013/07/31(水) NY:AN:NY.AN ID:CYxROjdr.net
ある程度人気出たら
「ディストリに入れよう」って人も出てくるけどなぁ。
入らなくても公式とは別にリポジトリ立てる人もいるし。

31 :login:Penguin:2013/07/31(水) NY:AN:NY.AN ID:H4k6v0uK.net
バイナリーの互換性がないから、Windowsにバカにされる。

動作しているライブラリやカーネルに
互換性が無い部分をアプリ側が場合分けして対応しているならともかく
それを行わないからandroidにもバカにされる。

32 :login:Penguin:2013/07/31(水) NY:AN:NY.AN ID:CYxROjdr.net
バカにされても特に困らん。

33 :login:Penguin:2013/08/01(木) NY:AN:NY.AN ID:mhb/WX8r!.net
気がついていないだけでソフトが少ないという点で困っていると思う。
ccでコンパイルしたa.outをVectorにアップロードしてもバイナリ互換がないので使える人がいない。
だから誰もプログラムを作らない。人気がない。ソフトがない。

34 :login:Penguin:2013/08/01(木) NY:AN:NY.AN ID:qVsr+XQb.net
ソースで上げればみんなコンパイルして使う。

35 :login:Penguin:2013/08/01(木) NY:AN:NY.AN ID:Nn1pSPO0.net
Aという実装に依存してBという実装が作られるも
ある日突然Aが実装を変更して依存が壊れBという実装が動かなくなる

こういう場合
AかBのどちらかが問題を修正するなら問題無いけど
双方自分の実装が正しいと主張し修正を認めない時がある


こういうの何ていうの?

36 :login:Penguin:2013/08/01(木) NY:AN:NY.AN ID:1j1tGzBl.net
千日手

37 :login:Penguin:2013/08/01(木) NY:AN:NY.AN ID:hDIBtn3z!.net
>>34
ユーザーがいちいちソースからコンパイルして使うというのはLinuxでは一般的ではないだろう。
面倒すぎて受け入れられていないということだ。
ソース配布してもコンパイルするには時間がかかって手間だし、もしやる気があっても知識不足から手をつけられない人も多いだろう。
自分が開発しもしないのに、多くの種類の開発環境をインストールするのもばかばかしいだろう。
ソースを公開したい人や会社も少ない。
少なくとも俺はソース公開したくない。
プログラマーにとってはソース公開なんて自殺行為だからな。
ソース互換も100%じゃないしな。
開発環境やカーネルやライブラリのバージョンなどの関係ですんなりコンパイルが通るとも限らない。
コンパイルでエラーが出たら多くの人はあきらめるだろう。
バイナリ互換があってソース公開の義務さえなければ、多くの会社や個人がプログラム作成に参戦するが
バイナリ互換などないし、場合によってはソース公開の義務が出ることもあり、みんなWindowsのプログラム作っているのが現状。

38 :login:Penguin:2013/08/02(金) NY:AN:NY.AN ID:U+34vnhW.net
libc5のバイナリーがまだ残ってるマシンもってるけど、普通に動いてる。
さすがにa.out形式は残ってない。

39 :login:Penguin:2013/08/02(金) NY:AN:NY.AN ID:dSS/R9QJ.net
>>37
それ貴方の思い込みだから、Linuxのディストリの種類がどんだけあるか理解できていない。
マイナーとか含めたら万の単位いけるぞ。

40 :login:Penguin:2013/08/02(金) NY:AN:NY.AN ID:dSS/R9QJ.net
>>38
ライブラリーがライブラリーを必要としている階層タイプが無いなら
ソースから作っても対した作業じゃないんだけど。
1つアプリを動かすのに芋づる的に作業が拡大したのを経験すると
ソース方式がクソって思えてくるな。
互換も引きずり過ぎるのも無理があるが、完全に見切るのも無理があるわ。

41 :login:Penguin:2013/08/04(日) NY:AN:NY.AN ID:65jlEFZp!.net
>>39
とんちんかんなレスだな
誰がディス鳥の数の話なんかしているのさ
むしろディス鳥の数が多いほうがバイナリ互換がない方向に向かっているじゃないか
バカなのかおまえは

42 :login:Penguin:2013/08/04(日) NY:AN:NY.AN ID:GNchy+kS.net
>>41
おまえも大差ないなw日本語に問題あり。

43 :login:Penguin:2013/09/26(木) 22:02:35.17 ID:3XX1+nqn.net
ないからアップデートかけたら芋づる式に大量のソフトが入れ替わるんだろw

44 :login:Penguin:2013/09/27(金) 08:07:21.03 ID:yN+EWUQe.net
glibcみたいなコア中のコアはそうそうABI互換崩れないけどね。

45 :login:Penguin:2014/02/06(木) 10:06:42.00 ID:h2uXKLtR.net
作る側の思惑なんて関係ないんだよ
バイナリ互換が無いからみんなWindowsを使うんだよ
Linux使うくらいならMacの方が使いやすい(=バイナリ互換がある)んだよ
犬使うのは犬好きとOSマニアだけになっているのが現状

携帯みたいにユーザーへ影響があるPC用キラーソフトかPC用キラーハードが待ち遠しいぜ

46 :login:Penguin:2017/12/29(金) 15:30:50.01 ID:S/CsVkMC.net
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

JTAQT7M8AK

47 :login:Penguin:2018/05/22(火) 09:58:37.85 ID:Czl6p0FW.net
僕の知り合いの知り合いができた副業情報ドットコム
関心がある人だけ見てください。
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

KL34O

48 :login:Penguin:2018/07/18(水) 21:10:33.90 ID:KfPx2yu8.net
libc次第

49 :login:Penguin:2018/07/19(木) 09:32:51.48 ID:36pQT3q0.net
libcじゃなくて、コンパイラの所為だろ。

50 :login:Penguin:2018/07/19(木) 14:08:22.92 ID:eAIOTfor.net
はぁ?コンパイラは関係ねーだろ
釣りにすらなってねーぞ

51 :login:Penguin:2018/07/19(木) 17:04:50.62 ID:+7X+A5pU.net
両方関係あるんだよなぁ

52 :login:Penguin:2018/07/19(木) 17:28:32.23 ID:aByD1Jqk.net
>>50
カーネルが典型的な例。
ドライバの互換性は、コンパイラが変わるだけでもなくなる。

53 :login:Penguin:2018/07/19(木) 18:17:41.31 ID:eAIOTfor.net
なんでドライバの話が出てくるんだよ
そりゃドライバだってバイナリだけど少なくとも>>1は読もうぜ
お前らそういった分別すらつかなくなったのか?

54 :login:Penguin:2018/07/19(木) 18:24:48.25 ID:eAIOTfor.net
ちな、miscのカーネルモジュールはコンパイラのバージョンが違くてもロードできるからな
全て論破されてるの解るか?

55 :login:Penguin:2018/07/19(木) 19:16:10.54 ID:+7X+A5pU.net
それはCが十分に枯れてるから運良く問題が起きてないってだけなんだよなぁ
実際はABIが規定されてるわけじゃないからコンパイラの胸三寸で生成するバイナリの互換性をいくらぶっ壊そうがそれはルール違反じゃない

https://github.com/torvalds/linux/blob/master/Documentation/process/stable-api-nonsense.rst
実際カーネル付属のドキュメントでもビルドに使ったコンパイラのバージョンによっても構造体の詰物とかのデータの構造が変わる可能性がある事は言及されてるからね
ハイ、ロンp!

56 :login:Penguin:2018/07/19(木) 19:46:33.06 ID:eAIOTfor.net
お前らが書いたことの説明をしてるだけで流れを論破してないじゃん
あと運良くなんて存在しない

57 :login:Penguin:2018/07/19(木) 19:49:29.39 ID:+7X+A5pU.net
はい、反論できないと話題そらしーwww

58 :login:Penguin:2018/07/19(木) 19:56:41.22 ID:eAIOTfor.net
因縁つけて焦点ずらして何が楽しいんだ?

>>1はきちんと読んだのか?
・ドライバという全く関係ない話だとしてもコンパイラが違っても互換がある場合もあるぞ?

違うのか?あ?

59 :login:Penguin:2018/07/19(木) 20:00:23.85 ID:+7X+A5pU.net
ファーーーwww
自分で「コンパイラは関係ねーだろ」とか言っときながら「コンパイラが違っても互換がある場合もあるぞ」とかいい出したwwwww
うんうんそうだね、互換がある場合「も」あるね、そして「も」ってことはない可能性「も」あるねwww
じゃあコンパイラは関係あるねwwwwwww
はwwwいwwwちwwwwwんwwwwwぱーーーーーーーwwwwwwwwww

60 :login:Penguin:2018/07/19(木) 20:03:43.50 ID:eAIOTfor.net
負けを認められないから無駄に草生やすんだね
気持ち分かるよ

61 :login:Penguin:2018/07/19(木) 20:17:41.78 ID:bPzdBkIW.net
>>59頑張れ!
もっと発狂してくれ

62 :login:Penguin:2018/07/19(木) 20:43:59.89 ID:eAIOTfor.net
俺はID:+7X+A5pUが全裸でそのまま外出しないことを祈ってる

63 :login:Penguin:2018/07/19(木) 20:46:12.56 ID:bPzdBkIW.net
なんで全裸って決めつけてんだよw

64 :login:Penguin:2018/07/20(金) 16:35:41.40 ID:6U82076j.net
http://mao.5ch.net/test/read.cgi/linux/1531760480/36
このガイジまだ自分がぐぅの音も出ねぇほど完全否定されてんのに理解できてねーのなww
しかもあんまり可愛そうだから見逃してやったのにわざわざ関係ない他スレで効いてないアピールとかどんだけミジメなのwwww
つか「発狂させちゃった」とか>>60-63までの流れを自演しましたって白状しちゃってんじゃん、頭悪すぎてお腹痛いよぉぉwwwww

> アプリのバイナリの互換性スレなのにカーネルとドライバの互換性の話をググって理論武装しだす
ドライバをなんか特別なバイナリだと思ってんのかな?w
只のアプリだろうがドライバだろうが関係ねーんだよwwww
ドライバってかカーネルモジュールだって結局は只のELFのオブジェクトファイルだからそいつらがコンパイラのバージョンなんかによっても互換性が壊れるってのはユーザーランドの普通の実行ファイルでも一緒なのwwww


いい加減ハッタリやレッテル貼りだけじゃなくて技術的な反論してくれないかなぁwww

65 :login:Penguin:2018/07/20(金) 17:43:23.47 ID:/eROHa0F.net
はいはいまた発狂してますよー

66 :login:Penguin:2018/07/20(金) 17:52:34.94 ID:mHdZo6a6.net
>>64
昨日その後、全裸で外出したかどうかだけ教えてくれ

67 :login:Penguin:2018/07/20(金) 18:04:09.75 ID:Wvy8v0yx.net
くやしいのう、くやしいのうwww

68 :login:Penguin:2018/07/20(金) 18:13:21.35 ID:Wvy8v0yx.net
まあ馬鹿をからかうのも飽きたな
ちゃんと「技術的な反論を」って言った上でなおこのレッテル貼り&単発自演しか出来ないんだから後は放置だな

いくらでも煽ってくれていいけど後は技術的なレス以外は反応しないから精々頑張って自尊心を保ってくれや

69 :login:Penguin:2018/07/20(金) 18:19:22.73 ID:tO6fRy8r.net
反応しててワロタ

70 :login:Penguin:2018/07/21(土) 05:20:52.60 ID:PtXo/jk9.net
もともと>>2で既に答えがでてて、あとは皆glibcの話で補足してるスレ
なのにコンパイラ発狂キチガイが現れる→本当にLinux使いか怪しい

で、調べたらいた
レッテル貼 で 検索
https://mao.5ch.net/test/read.cgi/linux/1507061282/
去年から常駐してて1つのスレに10回以上 レッテル貼 と書いて、
常に誰かと争ってんだぜこのキチガイ m9(^Д^)

71 :login:Penguin:2018/07/21(土) 10:35:28.32 ID:SzSjTnxT.net
>>70
なんでそいつと同一人物だと思ったの?

72 :login:Penguin:2020/05/18(月) 06:01:00.80 ID:WQPjDuyE.net
age

73 :login:Penguin:2020/05/19(火) 21:46:04 ID:uRQc1lYq.net
>>70
何だろうな、デタラメなこと書いてる。
firefoxは特殊な例。こんな仕様のソフトウェアは、Linuxでは稀なのにね。

74 :login:Penguin:2020/05/19(火) 22:05:03 ID:uRQc1lYq.net
各ディストーションから、最適化されたバイナリが配布されるから、
通常のユーザはそれをインストールして使う。

特別な事情が無い限り、ユーザーがビルドすることは無いだろう。
熱心なゲーマーなら当然ビルドするんだろうけど。

75 :login:Penguin:2020/05/19(火) 22:11:33 ID:qLrWe9w7.net
デストリが配布せにゃならん時点でおかしいんだけどな。

76 :login:Penguin:2020/05/19(火) 22:37:08 ID:uRQc1lYq.net
一部のディストーションでは、バイナリパッケージを共通化しているけどね。
たとえば、DebianとLMDE、MX Linuxなんかがそうだな。
バイナリに互換性を持たせることで、Linuxの開発が効率的になるね。

77 :login:Penguin:2020/05/19(火) 22:38:54 ID:uRQc1lYq.net
>ディストーション
ディストリビューション 打ち間違った。

78 :login:Penguin:2020/05/19(火) 22:42:10 ID:uRQc1lYq.net
ちなみに、Firefoxをソースからビルドするのは、下記のように大変な手間がかかる。
こんなこと、ユーザがいちいちやってられない。

Firefox: Linux ビルド クイックスタートガイド
https://developer.mozilla.org/ja/docs/Developer_Guide/Build_Instructions/Linux_Build_Prerequisites

------------------------------------------------

最速Firefoxをビルドしよう【前編】
https://www.itmedia.co.jp/enterprise/articles/0704/29/news011.html

最速Firefoxをビルドしよう【後編】
https://www.itmedia.co.jp/enterprise/articles/0705/01/news010.html

19 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★