0

ライブラリlibspatialiteを使用して、NetBSD プラットフォームで sqlite を拡張しようとしています。pkgsrc ( libspatialite-4.1.1 ) で libspatialite のパッケージを作成する最初のステップを実行しました。パッケージは機能しているようです。pkg_info にはインストール済みと表示されており、PLIST のファイル (以下のコード チャンク) が /usr/pkg/ にインストールされていることを確認しました。ただし、 spatialite -tools用にビルドしたパッケージをインストールしようとすると、configure で libspatialite がインストールされていないと表示されます。また、ライブラリを sqlite3 にロードする方法がわかりませんload_extenstion(X,Y)ドキュメントで参照されているライブラリ ファイルは何ですか?

pkgsrc/データベース/libsqlite/PLIST:

@comment $NetBSD$
include/spatialite.h
include/spatialite/debug.h
include/spatialite/gaiaaux.h
include/spatialite/gaiaexif.h
include/spatialite/gaiageo.h
include/spatialite/geopackage.h
include/spatialite/gg_advanced.h
include/spatialite/gg_const.h
include/spatialite/gg_core.h
include/spatialite/gg_dxf.h
include/spatialite/gg_dynamic.h
include/spatialite/gg_formats.h
include/spatialite/gg_mbr.h
include/spatialite/gg_structs.h
include/spatialite/gg_wfs.h
include/spatialite/gg_xml.h
include/spatialite/spatialite.h
include/spatialite/sqlite.h
lib/libspatialite.la
lib/pkgconfig/spatialite.pc
4

1 に答える 1

0

libspatialite パッケージに buildlink3.mk ファイルはありますか?

そうでない場合:

暗黙の依存関係に対するパッケージのビルドを回避するために、pkgsrc は明示的にリストされたライブラリのみをビルド パッケージから見えるようにします。

これにより、パッケージがたまたまインストールされたオプションの依存関係を取得し、そのライブラリを使用するがパッケージ メタデータにリストされていないバイナリ パッケージをビルドするという問題が停止します。結果として得られるバイナリ パッケージは、オプションの依存関係が削除されるまでそのシステムで正常に動作し、その隠れた依存関係がない他のシステムでは失敗します。

とにかく... buildlink3.mk ファイルは、ビルド中に必要なファイルを表示するために pkgsrc で使用されます。libspatialite buildlink3.mk は以下のようになります (現在の lib バージョンに 1.0 を調整します)。

# $NetBSD$

BUILDLINK_TREE+=        libspatialite

.if !defined(LIBSPATIALITE_BUILDLINK3_MK)
LIBSPATIALITE_BUILDLINK3_MK:=

BUILDLINK_API_DEPENDS.libspatialite+=libspatialite>=1.0
BUILDLINK_PKGSRCDIR.libspatialite?=     ../../devel/libspatialite

BUILDLINK_LIBDIRS.libspatialite+=       lib/spatialite
BUILDLINK_RPATHDIRS.libspatialite+=     lib/spatialite
BUILDLINK_INCDIRS.libspatialite+=       include/spatialite

.endif # LIBSPATIALITE_BUILDLINK3_MK

BUILDLINK_TREE+=        -libspatialite

次に、依存するパッケージに次のようなものを追加します。

.include "../../devel/libspatialite/buildlink3.mk"
于 2014-03-31T08:44:37.763 に答える