LSB アプリ/ライブラリ チェッカーを使用することを強くお勧めします 。次の場合は、すぐにわかります。
- 一部のディストリビューションでは利用できない拡張機能を使用している
- インストール スクリプトに bash-isms を導入する
- 最近のすべてのカーネルで利用できないシステムコールを使用する
- 非標準ライブラリに依存します (どのディストリビューションにそれらがないかがわかります)
- そして、他の多くの非常に優れたチェックに基づいて、多くの
ここで詳細情報を入手したり、ツールをダウンロードしたりできます。実行するのは簡単です..それを解凍し、perl スクリプトを実行し、ブラウザを localhost に向けるだけです..残りはブラウザ駆動です.
このツールを使用すると、ライブラリ/アプリの LSB 認定を (両方のバージョンで) 簡単に取得でき、ディストリビューション パッケージャーの作業がはるかに簡単になります。
さらに、libtool (または類似のもの) などを使用して、ライブラリが正しくインストールされていることを確認し、DSO にリンクしたくない人のために静的オブジェクトを提供します (ほとんどのディストリビューションでライブラリが表示されるまでに時間がかかります)。 、移植可能なプログラムを書いているので、それが存在することを期待できません)そしてあなたの公開インターフェースによくコメントしてください。
ライブラリについては、Doxygenが最適です。ドキュメンテーションは非常に重要です。特定のタスクに使用するライブラリの選択に確実に影響します。
繰り返しになりますが、アプリ チェッカーをチェックしてください。移植性の問題に関するレポートが表示されます。このレポートを入手するには、ライブラリを実際に公開するのに 1 年かかります。
最後に、ライブラリを「ツリー内」に簡単にドロップできるようにしてください。これにより、ライブラリに対して静的にリンクする必要がなくなります。私が言ったように、ほとんどのディストリビューションで一般的になるまでには数年かかる可能性があります. ライブラリが一般化するまで、コードを取得して src/lib にドロップして使用する方がはるかに簡単です。ユニットテストをお願いします.TAP(何でもプロトコルをテストする)は、それを行うための優れた移植可能な方法です。あなたのライブラリをハッキングした場合、特にツリーまたは その場で変更する場合 (DSO が存在する場合) に、それを壊したかどうかを (迅速に) 知る必要があります。