RPM jffs2 issue

From eLinux.org
Revision as of 04:14, 9 December 2010 by Max Galemin (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

If you want to cross-compile RPM Package Manager for Beagleboard C4 or some other board which uses NAND flash with JFFS2 please note there is an issue with RPM on JFFS2:

rpm -ihvv <some_package>.rpm
D: pool fd:     created size 464 limit -1 flags 0
D: pool ts:     created size 888 limit -1 flags 0
D: pool gi:     created size 88 limit -1 flags 0
D: pool dig:    created size 256 limit -1 flags 0
D: pool h:      created size 240 limit -1 flags 0
D: Expected size:      1363757 = lead(96)+sigs(180)+pad(4)+data(1363477)
D:   Actual size:      1363757
D: <some_package>.rpm: Header SHA1 digest: OK (f72871f5a1658152ec7db2dcda967b1d41325e7b)
D: pool te:     created size 216 limit -1 flags 0
D: pool ds:     created size 124 limit -1 flags 0
D: pool fi:     created size 320 limit -1 flags 0
D: pool db:     created size 208 limit -1 flags 0
D: opening  db environment /var/lib/rpm/Packages auto_commit:create:cdb
rpmdb: mmap: Invalid argument
D: opening  db environment /var/lib/rpm/Packages auto_commit:create:cdb
rpmdb: mmap: Invalid argument
error: db4 error(22) from dbenv->open: Invalid argument
D: opening  db index       /var/lib/rpm/Packages create mode=0x0
error: cannot open Packages(0) index using db3 - Invalid argument (22)
error: cannot open Packages database in /var/lib/rpm
D: pool ps:     created size 20 limit -1 flags 0
D: pool tsi:    created size 24 limit -1 flags 0
D: ========== recording tsort relations
D: ========== tsorting packages (order, #predecessors, #succesors, tree, Ldepth, Rbreadth)
D:     0    0    0    1    0    0 +Bsc-arm_20101209-embedded.arm
D: pool gi:     reused 0, alloc'd 1, free'd 1 items. 
D: pool tsi:    reused 11, alloc'd 1, free'd 1 items.
D: pool ts:     reused 0, alloc'd 1, free'd 1 items.
D: pool te:     reused 0, alloc'd 1, free'd 1 items.
D: pool ps:     reused 0, alloc'd 1, free'd 1 items.
D: pool ds:     reused 0, alloc'd 5, free'd 5 items.
D: pool fi:     reused 0, alloc'd 1, free'd 1 items.
D: pool db:     reused 0, alloc'd 1, free'd 1 items.
D: pool h:      reused 0, alloc'd 2, free'd 2 items.
D: pool dig:    reused 0, alloc'd 1, free'd 1 items.
D: pool fd:     reused 1, alloc'd 1, free'd 1 items.
rpm -vv --initdb
D: pool fd:     created size 464 limit -1 flags 0
D: pool ts:     created size 888 limit -1 flags 0
D: pool db:     created size 208 limit -1 flags 0
D: opening  db environment /var/lib/rpm/Packages auto_commit:cdb
rpmdb: mmap: Invalid argument
D: opening  db environment /var/lib/rpm/Packages auto_commit:create:cdb
rpmdb: mmap: Invalid argument
error: db4 error(22) from dbenv->open: Invalid argument
D: opening  db index       /var/lib/rpm/Packages create mode=0x42
error: cannot open Packages(0) index using db3 - Invalid argument (22)
D: pool tsi:    created size 24 limit -1 flags 0
D: pool tsi:    reused 1, alloc'd 1, free'd 1 items.
D: pool ts:     reused 0, alloc'd 1, free'd 1 items.
D: pool db:     reused 0, alloc'd 1, free'd 1 items.
D: pool fd:     reused 0, alloc'd 1, free'd 1 items.
rpm -vv --rebuilddb
D: pool fd:     created size 464 limit -1 flags 0
D: pool ts:     created size 888 limit -1 flags 0
D: pool db:     created size 208 limit -1 flags 0
D: opening  db environment /var/lib/rpm/Packages auto_commit:cdb
rpmdb: mmap: Invalid argument
D: opening  db environment /var/lib/rpm/Packages auto_commit:create:cdb
rpmdb: mmap: Invalid argument
error: db4 error(22) from dbenv->open: Invalid argument
D: opening  db index       /var/lib/rpm/Packages rdonly mode=0x0
error: cannot open Packages(0) index using db3 - Invalid argument (22)
error: cannot open Packages database in /var/lib/rpm
D: pool tsi:    created size 24 limit -1 flags 0
D: pool tsi:    reused 1, alloc'd 1, free'd 1 items.
D: pool ts:     reused 0, alloc'd 1, free'd 1 items.
D: pool db:     reused 0, alloc'd 1, free'd 1 items.
D: pool fd:     reused 0, alloc'd 1, free'd 1 items.


In order to deal with this issue please create /etc/rpm/macros.rpmdb file with the next line:

%__dbi_cdb create private nommap txn