LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux From Scratch (https://www.linuxquestions.org/questions/linux-from-scratch-13/)
-   -   BLFS 5.0 dpkg build fails (ncurses-related error) (https://www.linuxquestions.org/questions/linux-from-scratch-13/blfs-5-0-dpkg-build-fails-ncurses-related-error-142974/)

bhaskie 02-06-2004 10:04 AM

BLFS 5.0 dpkg build fails (ncurses-related error)
 
Hi,
I tried building dpkg and apt on BLFS 5.0 without success. I followed the tips from "BLFS TIPS". Till now not a single package has failed during make and this is the first one. I am running KDE 3.1.4. As mentioned in the TIP, I used dpkg 1.9.21 and apt 0.5.4. (dpkg_1.9.21.tar.gz & apt_0.5.4.tar.gz).

make fails and from the error it seems that ncurses is involved. On googling, I found a similar problem but there was no solution.
Commands I executed and the error I get are as follows:

$ tar xzvf dpkg_1.9.21.tar.gz
$ cd dpkg-1.9.21
$ ./configure --prefix=/usr --admindir=/var/lib/dpkg
$ mv doc/Makefile doc/Makefile.bak
$ sed 's/^all: /&# /g; s/^install: /&# /g' doc/Makefile.bak > doc/Makefile
$ make

[snip]

In file included from curkeys.cc:31:
curkeys.h:168: error: `KEY_EVENT' was not declared in this scope
make[1]: *** [curkeys.o] Error 1
make[1]: Leaving directory `/root/downloads/dpkg-1.9.21/dselect'
make: *** [all-recursive] Error 2

Am I missing something here? I reinstalled ncurses to see if anything happens but the error doesnt go. Is it possible to edit some source file to get rid of this error? Any help would be appreciated.

Regards,
Bhaskar.

320mb 02-06-2004 10:25 PM

Quote:

curkeys.h:168: error: `KEY_EVENT' was not declared in this scope
it appears the curkeys.h header file has some sort of syntax error.
goto the directory it is in and see if you can de-bug it...........
Quote:

/root/downloads/dpkg-1.9.21/dselect

bhaskie 02-07-2004 04:59 AM

THe file curkeys.h is generated during the build. Written on top of the file dselect/curkeys.h :

/*
* WARNING - THIS FILE IS GENERATED AUTOMATICALLY - DO NOT EDIT
* It is generated by mkcurkeys.pl from <curses.h>
* and keyoverride. If you want to override things try adding
* them to keyoverride.
*/

Well, I tried to edit the file "keyoverride" but still the same error. Then I deleted the rogue line in the file curkeys.h and ran make again. This time it built without errors.

I proceeded to build apt. This time i got the fllowing errors:

<code>

Compiling policy.cc to /root/downloads/apt-0.5.4/obj/apt-pkg/policy.opic
policy.cc: In member function `void
pkgPolicy::CreatePin(pkgVersionMatch::MatchType, std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, short int)':
policy.cc:186: error: no matching function for call to `
std::vector<pkgPolicy::Pin, std::allocator<pkgPolicy::Pin> >::insert(
__gnu_cxx::__normal_iterator<pkgPolicy::Pin*, std::vector<pkgPolicy::Pin,
std::allocator<pkgPolicy::Pin> > >)'
/usr/include/c++/3.3.1/bits/vector.tcc:89: error: candidates are:
__gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
std::vector<_Tp, _Alloc>::insert(__gnu_cxx::__normal_iterator<_Tp*,
std::vector<_Tp, _Alloc> >, const _Tp&) [with _Tp = pkgPolicy::Pin, _Alloc =
std::allocator<pkgPolicy::Pin>]
/usr/include/c++/3.3.1/bits/stl_vector.h:671: error: void
std::vector<_Tp, _Alloc>::insert(__gnu_cxx::__normal_iterator<_Tp*,
std::vector<_Tp, _Alloc> >, unsigned int, const _Tp&) [with _Tp =
pkgPolicy::Pin, _Alloc = std::allocator<pkgPolicy::Pin>]
policy.cc:200: error: no matching function for call to `
std::vector<pkgPolicy::PkgPin, std::allocator<pkgPolicy::PkgPin> >::insert(
__gnu_cxx::__normal_iterator<pkgPolicy::PkgPin*,
std::vector<pkgPolicy::PkgPin, std::allocator<pkgPolicy::PkgPin> > >)'
/usr/include/c++/3.3.1/bits/vector.tcc:89: error: candidates are:
__gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >
std::vector<_Tp, _Alloc>::insert(__gnu_cxx::__normal_iterator<_Tp*,
std::vector<_Tp, _Alloc> >, const _Tp&) [with _Tp = pkgPolicy::PkgPin,
_Alloc = std::allocator<pkgPolicy::PkgPin>]
/usr/include/c++/3.3.1/bits/stl_vector.h:671: error: void
std::vector<_Tp, _Alloc>::insert(__gnu_cxx::__normal_iterator<_Tp*,
std::vector<_Tp, _Alloc> >, unsigned int, const _Tp&) [with _Tp =
pkgPolicy::PkgPin, _Alloc = std::allocator<pkgPolicy::PkgPin>]
make[2]: *** [/root/downloads/apt-0.5.4/obj/apt-pkg/policy.opic] Error 1
make[1]: *** [all] Error 2
make: *** [all] Error 2

</code>

Well, what's goin on?


All times are GMT -5. The time now is 08:34 AM.