开发者

DTN in OpenEmbedded for BeagleBoard

开发者 https://www.devze.com 2023-01-19 02:18 出处:网络
I\'m trying to build the DTN using OpenEmbedded. Unfortunately, DTN uses Tcl 8.3 or 8.4 and DB 4.2, 4.3, 4.4 or 4.5, but bitbake is using

I'm trying to build the DTN using OpenEmbedded. Unfortunately, DTN uses Tcl 8.3 or 8.4 and DB 4.2, 4.3, 4.4 or 4.5, but bitbake is using Tcl 8.5 and DB 5.0.

In the OpenEmbedded recipes di开发者_运维技巧rectory, among other other files there exists:

db/

db/db_4.3.29.bb

db/db4-native.inc

db/db3-native_3.2.9.bb

db/db_5.0.21.bb

db/db3-3.2.9

db/db4.inc

db/files

db/db-native_4.3.29.bb

db/db3_3.2.9.bb

db/db-native_5.0.21.bb

db/db5.inc

tcltk/

tcltk/tk

tcltk/tk_8.4.19.bb

tcltk/tcl-native_8.4.19.bb

tcltk/tk-8.5.8

tcltk/tk-native_8.4.19.bb

tcltk/tk_8.5.8.bb

tcltk/files

tcltk/tcl

tcltk/tcl-8.5.8

tcltk/tcl_8.5.8.bb

tcltk/tcl_8.4.19.bb `

At some point when the bitbake was configuring the dtn, the following happens:

| checking for library containing pow... -lm

| checking for library containing dlopen... -ldl

| | configure: checking for tcl installation (version 8.4)

| checking for tcl.h (version 8.4) in /opt/OpenEmbedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi usr/include... no

|

| configure: checking for tcl installation (version 8.3)

| checking for tcl.h (version 8.3) in /opt/OpenEmbedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include... no

| configure: error: can't find usable tcl.h

NOTE: Task failed: /opt/OpenEmbedded/build/tmp/work/armv7a-angstrom-linux-gnueabi/dtn-2.5.0-r5/temp/log.do_configure.27117

ERROR: TaskFailed event exception, aborting

ERROR: Build of /opt/OpenEmbedded/openembedded/recipes/dtnrg/dtn_2.5.0.bb do_configure failed

ERROR: Task 11 (/opt/OpenEmbedded/openembedded/recipes/dtnrg/dtn_2.5.0.bb, do_configure) failed

NOTE: Tasks Summary: Attempted 897 tasks of which 883 didn't need to be rerun and 1 failed.

ERROR: '/opt/OpenEmbedded/openembedded/recipes/dtnrg/dtn_2.5.0.bb' failed `

To solve this I went to the dtn_2.5.0.bb and added --with-tclver=8.5.

The same thing happened with DB and to solve it again I did the same thing.

After a while, when bitbake was compiling the following happened:

| In file included from storage/BerkeleyDBStore.cc:35:

| storage/BerkeleyDBStore.h:31:2: error: #error "must use Berkeley DB major version 4" | In file included from /opt/OpenEmbedded/build/tmp/sysroots/i686-linux/usr/armv7a/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/../../../../

arm-angstrom-linux-gnueabi/include/c++/4.3.3/ext/hash_set:64,

| from storage/../util/StringUtils.h:39,

| from storage/DurableStore.h:35,

| from storage/BerkeleyDBStore.h:39,

| from storage/BerkeleyDBStore.cc:35:

| /opt/OpenEmbedded/build/tmp/sysroots/i686-linux/usr/armv7a/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/../../../../arm-angstrom-linux-gnueabi/include/c++/4.3.3/backward/backward_warning.h:33:2: warning: warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date.

Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated.

| storage/BerkeleyDBStore.cc: In member function 'virtual int oasys::BerkeleyDBStore::init(const oasys::StorageConfig&)':

| storage/BerkeleyDBStore.cc:129: warning: invalid conversion from 'void ()(const char, char*)' to 'void ()(const DB_ENV, const char*, const char*)'

| storage/BerkeleyDBStore.cc:187: error: 'DB_LOG_AUTOREMOVE' was not declared in this scope | make1: *** [storage/BerkeleyDBStore.o] Error 1

| make1: Leaving directory ``/opt/OpenEmbedded/build/tmp/work/armv7a-angstrom-linux-gnueabi/dtn-2.5.0-r5/dtn-2.5.0/oasys'

| make: * [oasys] Error 2

| FATAL: oe_runmake failed

NOTE: Task failed: /opt/OpenEmbedded/build/tmp/work/armv7a-angstrom-linux-gnueabi/dtn-2.5.0-r5/temp/log.do_compile.5339

ERROR: TaskFailed event exception, aborting

ERROR: Build of /opt/OpenEmbedded/openembedded/recipes/dtnrg/dtn_2.5.0.bb do_compile failed

ERROR: Task 13 (/opt/OpenEmbedded/openembedded/recipes/dtnrg/dtn_2.5.0.bb, do_compile) failed

NOTE: Tasks Summary: Attempted 913 tasks of which 913 didn't need to be rerun and 1 failed.

ERROR: '/opt/OpenEmbedded/openembedded/recipes/dtnrg/dtn_2.5.0.bb' failed `

So, is there any way to 'tell' bitbake or OpenEmbedded to use a version selected by me?


You specify versions of packages in the BOM.

0

精彩评论

暂无评论...
验证码 换一张
取 消