並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 299件

新着順 人気順

バイナリの検索結果1 - 40 件 / 299件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

バイナリに関するエントリは299件あります。 techfeedlinuxプログラミング などが関連タグです。 人気エントリには 『コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み』などがあります。
  • コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み

    Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。植山氏は、制作中のリンカである「mold」について発表しました。全2回。前半は、リンカの概要について話しました。 LLVMのリンカ「lld」オリジナルの作者 植山類氏:植山類です。今僕が作っているmoldというリンカについて発表します。 今回の発表の概要です。リンカが何かを知っている人はそんなにたくさんいないと思うので、まず説明します。次に、「mold」のポイントは速いことなのですが、速いと何がうれしいのかを説明します。そのあと、どれくらい速いのかを説明した上で、どう実現されているのか、概要を紹介します。詳細になると何時間あっても終わらないので、かなりハイレベルな話をします。 自己紹介のスライドを入れていませんが、僕はリンカを何度か作ったことがあって、LLVMのlld

      コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み
    • [速報]「Flutter 3」登場、FlutterによるmacOSとLinuxアプリ開発が正式版に。Macのユニバーサルバイナリにも対応

      Googleは開催中のイベント「Google I/O 2022」の基調講演で、Dart言語のフレームワークであるFlutterの最新版「Flutter 3」を発表しました。 Introducing Flutter 3 at #GoogleIO! Now featuring: Stable support for macOS and Linux apps Improved @Firebase integration ...and much more! Details here → https://t.co/7PLgfRBobE pic.twitter.com/XYzmCn3NYN — Flutter (@FlutterDev) May 11, 2022 2月に登場したFlutter 2.10でWindowsアプリケーション開発が正式版となったのに続いて、Flutter 3ではMacとLinu

        [速報]「Flutter 3」登場、FlutterによるmacOSとLinuxアプリ開発が正式版に。Macのユニバーサルバイナリにも対応
      • 軽量でインストールも簡単なシングルバイナリのKubernetesディストリビューション「k0s」、Mirantisがオープンソースでリリース。LinuxとWindowsに対応

        米Mirantisは、軽量かつシングルバイナリで、インストールや運用も簡単なKubernetesのディストリビューション「k0s」をオープンソースとしてリリースしました。 新しい Kuberentes distro, #k0s が OSSで公開されました! 軽量、ワンバイナリ、Intel/ARM対応、アップデートも簡単! チェックしてみてください!https://t.co/B4gBUPWau2 — Mirantis Japan (@Mirantis_JP) November 13, 2020 対応するOSはLinuxとWindows(今後リリース予定)。プロセッサはIntelとARMに対応します。 軽量かつ簡単に導入できて運用も容易 k0sは、「100% upstream vanila Kubernetes distro」(100%純正で色付けのないKubernetesディストリビューショ

          軽量でインストールも簡単なシングルバイナリのKubernetesディストリビューション「k0s」、Mirantisがオープンソースでリリース。LinuxとWindowsに対応
        • C# で、同じソースコードから常に同じバイナリを生成する

          昔、gist にだけ置いてて、そういえばブログに書いてなかったものを思い出したので書いておくことに。 (一応、部分的には言及したことがあるんですけど、ちゃんとした話はしたことがなかったはず。) 決定論的ビルド 3年くらい前まで、C# コードをコンパイルすると、ソースコードを一切書き換えていなくても、生成結果の exe/dll や pdb のバイナリが変化していました(決定性(deteminism)がない)。 原因は以下の2つです。 バイナリ中に埋め込まれる GUID にタイムスタンプと乱数から生成される値を使っていた デバッグ用のファイル情報がフルパスで埋め込まれていた GUID の方はタイムスタンプと乱数なので本当に致命的で、ローカルで再コンパイルしても毎回バイナリが変化していました。 フルパスの方は基本的には pdb (デバッグ用シンボル情報)だけの問題なんですが、 exe/dll で

            C# で、同じソースコードから常に同じバイナリを生成する
          • Google、「Chrome for Testing」を発表 ~ブラウザー自動化とテストに特化したバイナリ/自動更新による挙動変更や「ChromeDriver」の不一致といった悪夢からWeb開発者を開放

              Google、「Chrome for Testing」を発表 ~ブラウザー自動化とテストに特化したバイナリ/自動更新による挙動変更や「ChromeDriver」の不一致といった悪夢からWeb開発者を開放
            • grep の「バイナリファイル (標準入力) に一致しました」が出る条件を調べていたらそれは長い旅路の始まりだった。

              はじめに 昨今では1行につき、1つの JSON を出力する様なログファイル形式も珍しくはありません。 grep しやすい データベース化しやすい これらの理由で各所で多く使われています。僕も仕事で普通に使っているのですが、ある日突然そのログファイルを集計するスクリプトで以下の様なエラーが出始めました。

                grep の「バイナリファイル (標準入力) に一致しました」が出る条件を調べていたらそれは長い旅路の始まりだった。
              • Nintendo Switch™ ネイティブバイナリへの Go コンパイルを成功させた話

                本記事は「Go Advent Calender」25 日目の投稿です。 Happy Holidays! EDIT (2022-01-03): There is an English version of this article. tl;dr いままでは Go プログラムを Nintendo Switch 上で動かすために WebAssembly に一度変換し、それを C++ に変換してコンパイルするということを行ってきました。今回、 Go の Nintendo Switch 向けネイティブコンパイルに成功し、実際に手元でゲームを動かすことができました。手法として、システムコール呼び出しを C の関数呼び出しに置き換えるように -overlay オプションを指定してビルドしました。また、 -overlay オプションに指定する JSON を生成するパッケージ Hitsumabushi を開

                  Nintendo Switch™ ネイティブバイナリへの Go コンパイルを成功させた話
                • Docker Desktop、Appleシリコン上でx86-64バイナリをほぼネイティブな速度で実行可能にする「Rosetta for Linux」が正式版に

                  Docker Desktop、Appleシリコン上でx86-64バイナリをほぼネイティブな速度で実行可能にする「Rosetta for Linux」が正式版に WindowsやMac上に簡単にDockerコンテナ環境を構築できるツール「Docker Desktop」の最新版「Docker Desktop 4.25」がリリースされました。 Docker Desktop 4.25 is here! GA of Rosetta for Linux, an optimized installation on Windows, simplified Docker Scout settings, and so much more!https://t.co/KsPyxvpOOe — Docker (@Docker) October 31, 2023 x86-64バイナリをほぼネイティブな実行速度で Do

                    Docker Desktop、Appleシリコン上でx86-64バイナリをほぼネイティブな速度で実行可能にする「Rosetta for Linux」が正式版に
                  • Docker Desktop 4.16登場。AWSをローカルエミュレーションするLocalStackなど拡張機能が正式版。AppleシリコンMacでx86/amd64版Linuxバイナリの実行がβ版に

                    Docker Desktop 4.16登場。AWSをローカルエミュレーションするLocalStackなど拡張機能が正式版。AppleシリコンMacでx86/amd64版Linuxバイナリの実行がβ版に WindowsやMac、Linuxなどのマシンに対して手軽にDockerコンテナ環境を導入し、GUIで統合管理できるDocker Desktopの最新版「Docker Desktop 4.16」が正式リリースされました。 525,600 minutes - how do you measure a year? The space-time continuum complicates the answer, but #DockerDesktop 4.16 is out! Things to look forward (or backward) to: #DockerExtensions GA

                      Docker Desktop 4.16登場。AWSをローカルエミュレーションするLocalStackなど拡張機能が正式版。AppleシリコンMacでx86/amd64版Linuxバイナリの実行がβ版に
                    • WasmバイナリをWin/Mac/Linuxで実行可能なバイナリファイルへ変換可能に「Wasmer 3.0」正式リリース

                      スタンドアロンのWebAssemblyランタイム「Wasmer」の最新版「Wasmer 3.0」が正式リリースされました。 Announcing Wasmer 3.0https://t.co/Nay8Po9FXk — Wasmer (@wasmerio) November 23, 2022 Wasmerはオープンソースで開発されているWebAssemblyランタイムです。 WebAssemblyの動向を調査しているThe State of WebAssembly 2022によると、WasmerはWebAssemblyランタイムとして事実上の参照実装であるWasmtimeに続いて2番目に人気のあるランタイムとなっています。 参考:WebAssemblyアプリ開発ではRustが一番人気、用途ではサーバレスが急上昇、ランタイムはWasmtime。The State of WebAssembly

                        WasmバイナリをWin/Mac/Linuxで実行可能なバイナリファイルへ変換可能に「Wasmer 3.0」正式リリース
                      • Ruby中間表現のバイナリ出力を改善する - クックパッド開発者ブログ

                        Ruby 開発チームに4週間インターン生として参加いたしました、永山 (GitHub: NagayamaRyoga) です。 私は「Ruby中間表現のバイナリ出力の改善」という課題に取り組み、Railsアプリケーションのコンパイルキャッシュのサイズを70%以上削減することに成功しました。以下ではこの課題の概要とその成果について述べたいと思います。 InstructionSequenceの概要 まず、RubyVM 内で実行される命令の中間表現、InstructionSequence (以下 ISeq と省略) について簡単に説明します。 通常の Ruby プログラムは、以下のような手順で実行されます。 ソースコードを構文解析し、抽象構文木を作る。 抽象構文木をコンパイルして、ISeq を作る。 RubyVM (YARV) で ISeq を解釈し、実行する。 ISeq は、このように Ruby

                          Ruby中間表現のバイナリ出力を改善する - クックパッド開発者ブログ
                        • Linuxカーネル内にWebAssemblyランタイムを実装し、ネイティブバイナリよりも高速に実行可能にする「Kernel-WASM」登場

                          Linuxカーネル内にWebAssemblyランタイムを実装し、ネイティブバイナリよりも高速に実行可能にする「Kernel-WASM」登場 代表的なWebAssemblyランタイムの1つであるWasmerを開発しているWasmer社は、Linuxカーネル内にWebAssemblyランタイムを実装することで、安全かつ通常のLinuxバイナリよりも高速にWebAssemblyバイナリを実行可能にするオープンソースソフトウェア「Kernel-WASM」を公開しています。 (2023/2/13追記 このKernel-WASMの開発は2020年で止まっておりましたことを見落としていました。最近になって海外で話題になっており、新しい話題だと勘違いしたことが原因です。古い情報であることを基にした記事となっておりますことをお詫びいたします) Linuxカーネル内のWASMランタイムは第二のOS 同社はLi

                            Linuxカーネル内にWebAssemblyランタイムを実装し、ネイティブバイナリよりも高速に実行可能にする「Kernel-WASM」登場
                          • Goバイナリの脆弱性検知 - knqyf263's blog

                            Trivyのv0.17.0をリリースしました。 github.com 長い道のりでしたが、ようやくこれでGoバイナリの脆弱性検知に対応できました。夜中0時ぐらいからリリース作業を初めて気付いたら朝5時でした。 概要 Go言語で書かれたプログラムをビルドすると依存しているモジュールがバイナリに含まれます。現代のソフトウェア開発において利用しているOSSのライブラリが0ということはまれなので、何かしらのOSSライブラリが作成されたバイナリに同梱されます。これらのOSSの古いバージョンには既知の脆弱性が含まれる可能性があります。これを手動で調べて追うのは手間なので最近では脆弱性スキャナを用いて検知するのが普通です。自分が開発したTrivyというOSSの脆弱性スキャナではコンテナイメージやファイルシステム上のGoバイナリに含まれるモジュールを特定し脆弱性を検知します。 Goのバイナリからどうやって

                              Goバイナリの脆弱性検知 - knqyf263's blog
                            • 証拠品のバイナリデータを確認してデータが「整いすぎている」ため改ざんを暴いた裁判官が強すぎる。「中学高校レベルの知識なので法律家の一般教養の範囲」→!?

                              venomy @idleness_venomy >裁判所がバイナリデータを確認してデータが「整いすぎている」と疑問視したことから、裁判所に於いて愛知県側に人為的な消去等について釈明を求めたところ、愛知県側はサイレンを鳴らしていなかったと認めるに転じたという。 誰やねん、その裁判所(裁判官)と思ったら… kanaoka-law.com/archives/1433 2023-07-05 13:15:05 リンク 金岡法律事務所 またも捜査機関の証拠改ざん事例 【1】 某MLで話題沸騰(かどうかは知らないが少なくとも関心を集めた)の、名古屋地判2022年10月5日である。国賠事案ではあるものの、要するに一方当事者がパトカーであるという単なる交通事故事案であっ 845 users 618 venomy @idleness_venomy 単独なのか、この事件。。。 >判タの記事では、「音が周波数の異

                                証拠品のバイナリデータを確認してデータが「整いすぎている」ため改ざんを暴いた裁判官が強すぎる。「中学高校レベルの知識なので法律家の一般教養の範囲」→!?
                              • サーバレスに最適化したJava実行基盤「GraalOS」、オラクルが発表。Javaをネイティブバイナリにコンパイルし瞬時に起動

                                オラクルはJavaをサーバレス環境で実行するのに最適化した技術「GraalOS」を発表しました。 同時に、Oracle Cloudのサーバレス実行基盤である「Oracle Cloud Functions」でGraalOSの機能を提供することも発表されました。 Javaをコンパイルし、ネイティブバイナリを実行 GraalOSは名称にOSと付いているものの、LinuxやWindowsのようなOSではなく、Javaをデプロイする新たな技術とその基盤を指します。 具体的には、同社が提供しているJava実行環境である「GraalVM」のコンパイラを用いてJavaをコンパイルしてネイティブバイナリを生成し、それをサーバレス基盤にデプロイし実行することで、サーバレスアプリケーションの瞬時の起動と高速な実行などを実現するというものです。 参考:Javaのネイティブバイナリ生成可能なGraalVMの全機能が

                                  サーバレスに最適化したJava実行基盤「GraalOS」、オラクルが発表。Javaをネイティブバイナリにコンパイルし瞬時に起動
                                • TypeScriptをコンパイルしてWebAssemblyバイナリに、実現を目指す「TypeScript Compilation SIG」をByteCode Allianceが発表

                                  TypeScriptをコンパイルしてWebAssemblyバイナリに、実現を目指す「TypeScript Compilation SIG」をByteCode Allianceが発表 WebAssemblyの普及と発展を目的とするByteCode Allianceは、TypeScriptのコードをコンパイルしてWebAssemblyバイナリを生成できるようにすることを目指すスペシャルインタレストグループ「TypeScript Compilation SIG」を発表しました。 WebAssemblyの仕様策定はW3Cが行っており、ByteCode AllianceはそのWebAssemblyを基盤として、クロスプラットフォーム対応を実現するAPI群のWASI(WebAssembly System Interface)やコンポーネントモデル、ガベージコレクション対応などの拡張、およびそれらの事実

                                    TypeScriptをコンパイルしてWebAssemblyバイナリに、実現を目指す「TypeScript Compilation SIG」をByteCode Allianceが発表
                                  • ファイルをバイナリ化して動画にすることでYouTubeを容量無制限のストレージとして活用する試み

                                    YouTubeはアップロードする動画1本当たりのサイズや時間については上限を設けているものの、アカウントごとにアップロードできる動画の総量については制限を設けていません。そこで、ソフトウェア開発者のDvorakDwarf氏が、ファイルをバイナリ化して動画に変換し、YouTubeを「容量無制限のストレージ」として活用するためのツール「Infinite-Storage-Glitch(ISG/無限ストレージグリッチ)」を開発しました。 GitHub - DvorakDwarf/Infinite-Storage-Glitch: ISG lets you use YouTube as cloud storage for ANY files, not just video https://github.com/DvorakDwarf/Infinite-Storage-Glitch YouTube As

                                      ファイルをバイナリ化して動画にすることでYouTubeを容量無制限のストレージとして活用する試み
                                    • Goのバイナリに静的ファイルを埋め込むツール assets-life を書いた

                                      日本語の Go コミュニティだと go-bindata (なんか乗っ取り騒動とか色々あってメンテナンスされてない), go-assets (最近メンテナンス滞りがち) が有名(要出典)なやつです。 これらのライブラリに関してたくさん日本語記事が書かれて、今もたくさん検索に引っかかるのですが、残念ながら最近はメンテナンスが滞っています。 最近は statik の名前もよく見るようになりました。 その他は Resource Embedding - Awesome Go からどうぞ。 で、まあ、今回も完全に車輪の再発明なんですが、他の実装には色々と思うところがあり書いてみました。 shogo82148/assets-life USAGE なにはともあれ、まずは go get してきます。 $ go get github.com/shogo82148/assets-life assets-life

                                      • Webブラウザーで「Debian」Linuxが動く! WebAssembly製のx86仮想マシン「WebVM」/バイナリそのまま・再コンパイルなし。完全にクライアント側だけで動作

                                          Webブラウザーで「Debian」Linuxが動く! WebAssembly製のx86仮想マシン「WebVM」/バイナリそのまま・再コンパイルなし。完全にクライアント側だけで動作
                                        • GitHub - dnobori/DN-Win32DiskImagerRenewal: このリポジトリは、Windows 上での USB メモリ / SD カードイメージ書き込みツールのデファクト・スタンダードとなっている Win32 Disk Imager について、以下の点を改良した 「Win32 Disk Imager Renewal」 の デジタル署名済みの EXE 単体で動作する Win32 / x64 / ARM64 版バイナリ とソースコードを配布するためのものである。(1) PC 上で G

                                          しかし、原版の Win32 Disk Imager には、以下の問題点があった。 Google Drive との相性問題。 Google Drive クライアントアプリケーションを稼働させている Windows 環境では、Win32 Disk Imager の起動時に、エラーが発生し、正常に利用できない。 この問題は、Google Drive の仮想ドライブ機能 (G:\ 等) が有効になっている場合に発生する。 Google 社は、オープンソースの Dokan (Windows 用 FUSE ドライバ) を改造した Windows NT カーネル用デバイスドライバを用いて Google Drive の仮想ドライブを実装している。しかし、この仮想デバイスドライバと Win32 Disk Imager とは相性が悪く、Win32 Disk Imager の起動時のデバイス列挙時にエラーが発生

                                            GitHub - dnobori/DN-Win32DiskImagerRenewal: このリポジトリは、Windows 上での USB メモリ / SD カードイメージ書き込みツールのデファクト・スタンダードとなっている Win32 Disk Imager について、以下の点を改良した 「Win32 Disk Imager Renewal」 の デジタル署名済みの EXE 単体で動作する Win32 / x64 / ARM64 版バイナリ とソースコードを配布するためのものである。(1) PC 上で G
                                          • Win32 Disk Imager Renewal (Google Drive 相性問題解決、単一バイナリ、デジタル署名版) - by dnobori - Qiita

                                            Win32 Disk Imager Renewal (Google Drive 相性問題解決、単一バイナリ、デジタル署名版) - by dnoboriWindowsUSBWin32APIGoogleDriveSDカード by 登 大遊, 2022/11/19, Quiita 第二投稿記事 Git リポジトリ https://github.com/dnobori/DN-Win32DiskImagerRenewal は、Windows 上での USB メモリ / SD カードイメージ書き込みツールのデファクト・スタンダードとなっている Win32 Disk Imager について、以下の点を改良した 「Win32 Disk Imager Renewal」 の デジタル署名済みの EXE 単体で動作する Win32 / x64 / ARM64 版バイナリ とソースコードを配布するためのものである

                                              Win32 Disk Imager Renewal (Google Drive 相性問題解決、単一バイナリ、デジタル署名版) - by dnobori - Qiita
                                            • マイクロソフト、「.NET 8」正式リリース、2年ぶりのLTS版。Dynamic PGOによる最適化コンパイル、事前コンパイルのバイナリサイズが半分など、さらなる高速化が前進

                                              マイクロソフト、「.NET 8」正式リリース、2年ぶりのLTS版。Dynamic PGOによる最適化コンパイル、事前コンパイルのバイナリサイズが半分など、さらなる高速化が前進 Announcing the availability of .NET 8, the latest LTS version of one of the world’s leading development platforms. With this release, .NET reshapes the way we build intelligent, cloud-native, applications and high-traffic services that scale on demand. https://t.co/WqZkUpJOhN pic.twitter.com/NmARKBd78q — .NET (

                                                マイクロソフト、「.NET 8」正式リリース、2年ぶりのLTS版。Dynamic PGOによる最適化コンパイル、事前コンパイルのバイナリサイズが半分など、さらなる高速化が前進
                                              • CentOS 8とバイナリ互換のRHELクローン「MIRACLE LINUX 8.4」が無償公開へ。今後のバグフィクスやアップデートも無償。CentOS 8の代替を狙う

                                                CentOS 8とバイナリ互換のRHELクローン「MIRACLE LINUX 8.4」が無償公開へ。今後のバグフィクスやアップデートも無償。CentOS 8の代替を狙う サイバートラストは、CentOS 8とのバイナリ互換のLinux OS「MIRACLE LINUX 8.4」を、無償ライセンスで公開することを発表しました。合わせて、2030年1月までのアップデートとCentOSからの移行ツールなども無償提供されます。 CentOS 8とはバグも含めてバイナリ互換 CentOS 8はRed Hat Enterprise Linux(以下RHEL)との互換性を備える無償のLinux OSとして多くの個人ユーザーや企業ユーザーで利用されています。しかし今年末でサポートが終了し、公式のセキュリティフィクスやアップデートが提供されなくなるため、継続して安定したシステムを運用するには別のOSへの移行

                                                  CentOS 8とバイナリ互換のRHELクローン「MIRACLE LINUX 8.4」が無償公開へ。今後のバグフィクスやアップデートも無償。CentOS 8の代替を狙う
                                                • フルスクラッチでQEMU型自作エミュレータはどう作る? Rustを使った自作バイナリ変換型シミュレータ

                                                  Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。msyksphinz氏は、自作エミュレータで得た学びについて発表しました。全2回。前半は、自作エミュレータの実装とその結果について。 実機が存在しなくてもエミュレータを使えば動きの中身が見える msyksphinz氏(以下、msyksphinz):「Rustで作るフルスクラッチQEMU型エミュレータ」と題して、発表をします。 簡単に自己紹介をさせてください。Twitterだとこういうアカウントでいろいろと活動しています。趣味で「FPGA開発日記」というブログを書いていて、RISC-V、FPGA、CPU、低レイヤプログラミングなど、興味のあるものの記事を書いています。本業はハードウェア開発エンジニアをしていて、汎用CPUの設計などの仕事をしています。 今回はRustとい

                                                    フルスクラッチでQEMU型自作エミュレータはどう作る? Rustを使った自作バイナリ変換型シミュレータ
                                                  • PythonコードをWin/Mac/Linuxバイナリに変換する「PyOxidizer」

                                                    Fossbytesは6月27日(米国時間)、「PyOxidizer Can Turn Python Code Into Apps For Windows, MacOS, Linux」において、Pythonスクリプトをバイナリファイルに変換するツール「PyOxidizer」を紹介した。このツールを使うと、Pythonスクリプトをそれ単体で実行できるバイナリファイルに変換してくれる。サポートされているプラットフォームはWindows、macOS、Linuxの3つ。 Getting Started — PyOxidizer 0.1 documentation Pythonは現在人気の高いプログラミング言語の1つ。集計方法にもよるが、Pythonはどのランキングにおいても長期にわたって成長傾向を続けており、利用されるシーンが広がっている。しかし、記事ではこうした利用がプログラマーに限定されたものと

                                                      PythonコードをWin/Mac/Linuxバイナリに変換する「PyOxidizer」
                                                    • V言語: Goのようにシンプルで、Rustのように小さいバイナリ|TechRacho by BPS株式会社

                                                      こんにちは、hachi8833です。昨年夏に話題になったV言語を半年遅れで知って最近遊んでいます。「主観的には」かなり安定して動く印象です。 V is a high-performance and simple computer language with graphics, web and UI libraries and compiles itself in under a second. Where were you two decades ago?!https://t.co/tZCEgJaUTl — Carl Carrie (@🏠) (@carlcarrie) October 7, 2019 サイト: The V Programming Language Discordコミュニティ: https://discord.gg/vlang なお以下のベンチマークは、そういう結果もあるの

                                                        V言語: Goのようにシンプルで、Rustのように小さいバイナリ|TechRacho by BPS株式会社
                                                      • Rust でバイナリを配布する

                                                        これは天久保 Advent Calendar 2022 二日目の記事です。明日は休日なのでやすみです。 本記事は全部 GNU/Linux においての話で、ELF 実行可能形式のファイルのことを指してバイナリと呼びます。 Rust で書いたプログラムをビルドして配布したいことがあるでしょう。サーバーアプリケーションなどとなればコンテナイメージを配布するのがまっとうに思えますが、コマンドラインアプリケーションとなると実行の手軽さや起動オーバーヘッドへの配慮からやはりバイナリを配布する必要が出てくると思います。一方で Rust でビルドしたバイナリは[1]システムの glibc に動的リンクされており、可搬性が低い可能性があります。つまり、ビルドした環境より glibc のバージョンが低い環境でそのバイナリは動かない可能性があるということです。実例を見てみましょう。下のプログラム[2]は Deb

                                                          Rust でバイナリを配布する
                                                        • Javaのネイティブバイナリ生成可能なGraalVMの全機能が無料に、最適化コンパイラやG1ガベージコレクションを含む。本番環境でも利用可能

                                                          Javaのネイティブバイナリ生成可能なGraalVMの全機能が無料に、最適化コンパイラやG1ガベージコレクションを含む。本番環境でも利用可能 オラクルは、同社がJavaディストリビューションとして提供しているGraalVMの新ライセンス「GraalVM Free Terms and Conditions」(GFTC)を発表し、あわせてこれまで有償版のGraalVMに含まれていた全ての機能を含む新ディストリビューション「Oracle GraalVM」の提供を開始しました。 GFTCでは、これまで有償版のGraalVMで提供してきた最適化コンパイラやG1ガベージコレクションなどを含むすべての機能が無料で利用可能となり、本番環境での利用も許諾されます。 Introducing a new distribution — Oracle @GraalVM! Use all the greatest G

                                                            Javaのネイティブバイナリ生成可能なGraalVMの全機能が無料に、最適化コンパイラやG1ガベージコレクションを含む。本番環境でも利用可能
                                                          • Red Hatが「Quarkus」の商用サポートを開始。JavaコードをコンパイルしてLinuxバイナリを生成、省メモリ高速起動でコンテナ環境に最適

                                                            Red Hatが「Quarkus」の商用サポートを開始。JavaコードをコンパイルしてLinuxバイナリを生成、省メモリ高速起動でコンテナ環境に最適 Red Hatは、Kubernetesなどのコンテナ環境に最適化されたJavaアプリケーション開発と実行のためのフレームワーク「Quarkus」の商用サポート開始を発表しました。 #Quarkus, a #Kubernetes-native #Java runtime, now fully supported by @RedHat. https://t.co/EFzJS5wxDW pic.twitter.com/6gwo5Sq15x — Red Hat Developer (@rhdevelopers) May 28, 2020 Quarkusの最大の特徴は、GraalVMのコンパイラを用いてJavaコードからLinuxのネイティブバイナリを

                                                              Red Hatが「Quarkus」の商用サポートを開始。JavaコードをコンパイルしてLinuxバイナリを生成、省メモリ高速起動でコンテナ環境に最適
                                                            • ユニークなバイナリーの報酬プランのサンクスアイ!評判は? | 勧誘しない!インターネット集客MLM(ネットワークビジネス)

                                                              MLM(ネットワークビジネス)のサンクスアイ(ThanksAi)という会社(企業)をご存知でしょうか? サンクスアイは、2017年度に前年比80%の増収を達成し、最も活躍した会社(企業)「NBアワード カンパニー・オブ・ザ・イヤー」を3年連続で受賞するなど、ここ数年の急速な成長が注目を集めているMLM(ネットワークビジネス)の会社(企業)です。 人によっては、グローバルプロジェクト(GLOBAL PROJECT)という名前で話を聞いた人も多いでしょう。 さて、サンクスアイの急成長の裏側には何があるのでしょう? 製品のこと、報酬プランのこと、グローバルプロジェクト(GLOBAL PROJECT)とは何なのか、そしてビジネスとして稼ぐことができるのかどうか、こうしたことについて見ていきます。 サンクスアイってどんな会社(企業)? 会社名 : サンクスアイ株式会社 所在地 : 861-8035

                                                                ユニークなバイナリーの報酬プランのサンクスアイ!評判は? | 勧誘しない!インターネット集客MLM(ネットワークビジネス)
                                                              • GitとGitHubの機能をひとつのバイナリに詰め込んだ「Fossil」レビュー

                                                                ソフトウェアのバージョン管理といえば、GitとGitHubを用いるのが主流。しかし、バージョン管理システムにはCVSやSubversion、Mercurial、GitLab、Bitbucketなど、「GitとGitHub」以外の選択肢も存在します。そんな「GitとGitHub」とは別の選択肢のひとつが、データベースのSQLiteと同じくD. Richard Hipp氏によって開発された「Fossil」です。 Fossil: Home https://www.fossil-scm.org/home/doc/trunk/www/index.wiki FossilはLinuxやmacOS、Windowsに対応しており、ソースコードから自分でバイナリをビルドすることも可能。今回はUbuntu 20.04上でFossilを利用してみます。 まずは下記コマンドを実行して、Fossilのバイナリを実行可

                                                                  GitとGitHubの機能をひとつのバイナリに詰め込んだ「Fossil」レビュー
                                                                • RubyのWebAssembly/WASIへの移植が実現、プレリリース版のバイナリ公開。RubyGemsにも対応

                                                                  RubyのWebAssembly/WASIへの移植が実現、プレリリース版のバイナリ公開。RubyGemsにも対応 Ruby言語のインタプリタをWebAssemblyランタイムで実行できるようにする移植作業が実現しました。WebAssembly版Rubyのバイナリファイルがプレリリース版として公開され、実際に試すことができます(ruby/ruby.wasm)。 RubyのWebAssemblyへの移植作業が始まったことは、1月に公開した記事「RubyがWebAssemblyのWASI対応へ前進。ブラウザでもサーバでもエッジでもどこでもWebAssembly版Rubyが動くように」で紹介しましたが、この移植作業が早くも完了したことが、移植を行ったkatei (Yuta Saito)氏が公開したドキュメント「An Update on WebAssembly/WASI Support in Rub

                                                                    RubyのWebAssembly/WASIへの移植が実現、プレリリース版のバイナリ公開。RubyGemsにも対応
                                                                  • Microsoftが「PHP」サポートを縮小 ~「PHP 8.0」バイナリは公式提供せず/有志によるWindowsビルドの提供継続に期待

                                                                      Microsoftが「PHP」サポートを縮小 ~「PHP 8.0」バイナリは公式提供せず/有志によるWindowsビルドの提供継続に期待
                                                                    • Go のバイナリを Perl スクリプトとしても扱う - アルパカ三銃士

                                                                      環境は macOS 10.14.4 で go1.12.5 です。 まずは次のコードを読んでみましょう package main import ( "fmt" "io/ioutil" ) const script = ` #!perl print "Hello, Perl World!!"; __END__ ` func init() { ioutil.Discard.Write([]byte(script)) } func main() { fmt.Println("This is Go world!!") } これをビルドして実行してみます go build -o main main.go こうすると main という実行用のバイナリができますね。 通常通り実行してみましょう。 $ ./main This is Go world!! 今度は Perl で実行してみましょう $ perl

                                                                        Go のバイナリを Perl スクリプトとしても扱う - アルパカ三銃士
                                                                      • Goなどでクロスコンパイルしたワンバイナリなソフトウェアを最小工数でdeb/RPMパッケージにしてくれるNFPMが便利 - Copy/Cut/Paste/Hatena

                                                                        みなさんはdeb/RPMパッケージを作ったことはありますか? 私はtcpdpのパッケージ作成ではじめて作りました。具体的にはここらへんです。 tcpdpはlibpcapに依存していることもあり、DockerでUbuntu/CentOSの環境を作ってその上でコンパイルして、合わせてdeb/RPMパッケージ化までするようにしています。 本来Goはクロスコンパイルができるので、コンパイルしてできたバイナリをdeb/RPMパッケージにできればいいわけです。 ただ、意外にdeb/RPMパッケージをするための前準備が面倒です。 debパッケージであればcontrolファイルを書かないといけないですし、RPMパッケージであればspecファイルを書く必要があります。それぞれ覚えているほど書く機会はないので毎回ググるはめに。 ビルド方法にもお作法があります。これもあまり覚えていませんがディレクトリ構成などい

                                                                          Goなどでクロスコンパイルしたワンバイナリなソフトウェアを最小工数でdeb/RPMパッケージにしてくれるNFPMが便利 - Copy/Cut/Paste/Hatena
                                                                        • ImHex:午前3時にがんばる人のためのバイナリエディタ - setodaNote

                                                                          ImHex という Hex エディタを Ubuntu 20.04 にインストールしたときのメモ書きです。 ImHex ImHex を Ubuntu 20.04 にインストールする ImHex の画面設定 動かしてみた感想 参考文献 ImHex 公式 cmake 周り 参考にしたトラブルシューティング 付録 concepts が見つけられないというエラーについて 「CMake Error at cmake/build_helpers.cmake:55」について 更新履歴 ImHex ImHex は2020年の12月に公開された比較的新しい、午前3時にがんばる人のための Hex エディタです。 *1 GitHub - WerWolv/ImHex: A Hex Editor for Reverse Engineers, Programmers and people that value thei

                                                                            ImHex:午前3時にがんばる人のためのバイナリエディタ - setodaNote
                                                                          • 「SMB 1.0」サポート廃止は最終段階 ~プレビュー版Windows 11 Homeで既定無効に/将来的にはバイナリも削除。古いNASを使い続けているユーザーは注意

                                                                              「SMB 1.0」サポート廃止は最終段階 ~プレビュー版Windows 11 Homeで既定無効に/将来的にはバイナリも削除。古いNASを使い続けているユーザーは注意
                                                                            • bpftraceを使ってバイナリの謎の性能劣化を突き止めろ - Cybozu Inside Out | サイボウズエンジニアのブログ

                                                                              サイボウズ社内ではC++で開発している製品があります。 未知のバッファオーバーランなどの脆弱性への対策として、重要なコンポーネントについてはプロダクション環境で利用しているバイナリでも AddressSanitizer を有効にしてビルドしています。 その製品で利用しているコンパイラをgcc5.3.0からgcc7.5.0に更新したところ性能劣化が発生しました。 製品コードとは別の部分が原因のため、根本原因の追跡が難しそうです。perf,bpftraceを使って性能劣化を追いかけてみましょう。 本記事で利用しているAddressSanitizer, bpftrace, perfコマンドはネット上に良質な記事がありますので、使い方などの解説は今回は省略させていただきます。 gcc7.5.0において、性能劣化が発生する再現コードとして次のようなものを用意しました。 #include <strin

                                                                                bpftraceを使ってバイナリの謎の性能劣化を突き止めろ - Cybozu Inside Out | サイボウズエンジニアのブログ
                                                                              • 「Microsoft Build of OpenJDK」が一般公開 ~無償で「Java」の長期サポートを提供/Windows(x64)/Mac/Linux対応、運用環境で利用できる「Java 11」バイナリ

                                                                                  「Microsoft Build of OpenJDK」が一般公開 ~無償で「Java」の長期サポートを提供/Windows(x64)/Mac/Linux対応、運用環境で利用できる「Java 11」バイナリ
                                                                                • 「Python 3.12」が正式版に ~言語機能の強化で使い勝手向上、エラーもわかりやすく/「Microsoft Store」にも「Python 3.12」バイナリが追加

                                                                                    「Python 3.12」が正式版に ~言語機能の強化で使い勝手向上、エラーもわかりやすく/「Microsoft Store」にも「Python 3.12」バイナリが追加

                                                                                  新着記事