This is a followup of the "make libsigc++-​1.9.16 gives unexpected
errors" issue. I get similar error messages with NZBGet, but here the
export CXX line (export
CXX=/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++)
doesn't solve all issues.


I looked a bit more into this issue for NZBGet.

Here the difference between the Makefile of the working
(nzbget-0.7.0-ok) and not working (nzbget-0.7.0-fail) one for NZBGet:
The failed one was witout the export CXX line, the working one with
export CXX line, both without ncurses support.
If I copy the working Makefile over the non-working than this issue is solved.

[sbox-DV20x0: ~/nzbget] > diff nzbget-0.7.0-ok/Makefile
nzbget-0.7.0-fail/Makefile
111,112c111,112
< CXX = 
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++
< CXXCPP = 
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++
-E
---
> CXX = g++
> CXXCPP = g++ -E
148c148
< ac_ct_CXX =
---
> ac_ct_CXX = g++
[sbox-DV20x0: ~/nzbget] >

Unfortunately the export CXX line (export
CXX=/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++)
doesn't solve all issues. If I try to compile NZBGet with ncurses
support I still get this "`_Atomic_word' does not name a type" errors.
Even if I recompile ncurses and libxml2 with the export CXX line.

Below compare Makefiles with and without curses, both compiled with
the export CXX line.
[sbox-DV20x0: ~/nzbget/nzbget-0.7.0] > diff
../nzbget-0.7.0-ok/Makefile ./Makefile
109,110c109,110
< CFLAGS =  -I/usr/include/libxml2
< CPPFLAGS =  -I/usr/include/libxml2
---
> CFLAGS =  -I/usr/include/libxml2   -I/usr/include
> CPPFLAGS =  -I/usr/include/libxml2   -I/usr/include
128c128
< LDFLAGS =  -lxml2
---
> LDFLAGS =  -lxml2   -L/usr/lib
130c130
< LIBS = -lpthread
---
> LIBS = -lncurses -lpthread
[sbox-DV20x0: ~/nzbget/nzbget-0.7.0] >


I hope somone can point to a good solution for this.

Regards,

Ron Hermsen

Below the commands used to compile libxml2 (required for NZBGet):
cd
mkdir libxml2
cd libxml2
wget ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.2.tar.gz
tar xfvz libxml2-sources-2.7.2.tar.gz
cd libxml2-2.7.2
./configure \
--prefix=/usr
make
mkdir -p builds/debian/DEBIAN
make install DESTDIR=~/libxml2/libxml2-2.7.2/builds/debian
cd builds
vi debian/DEBIAN/control
find ./debian -type d | xargs chmod 755
fakeroot dpkg-deb --build debian
mv debian.deb libxml2-2.7.2-1_mips.deb
dpkg -i --force-architecture libxml2-2.7.2-1_mips.deb

Below the commands used to compile NZBGet with ncurses:
cd
mkdir nzbget
cd nzbget
wget http://sourceforge.net/projects/nzbget/files/nzbget-0.7.0.tar.gz
tar xfvz nzbget-0.7.0.tar.gz
cd nzbget-0.7.0
export 
CXX=/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++
./configure \
--prefix=/usr \
--disable-parcheck \
--disable-tls
make


Below the commands used to compile NZBGet without ncurses support:
cd
mkdir nzbget
cd nzbget
wget http://sourceforge.net/projects/nzbget/files/nzbget-0.7.0.tar.gz
tar xfvz nzbget-0.7.0.tar.gz
cd nzbget-0.7.0
export 
CXX=/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++
./configure \
--prefix=/usr \
--disable-curses \
--disable-parcheck \
--disable-tls
make


Below the commans used to compile ncurses (optional for NZBGet):
cd ~
mkdir ncurses
cd ~/ncurses
wget ftp://ftp.gnu.org/gnu/ncurses/ncurses-5.5.tar.gz
tar xfvz ncurses-5.5.tar.gz
cd ncurses-5.5
./configure \
--with-shared \
--prefix=/usr \
--disable-overwrite \
--without-normal \
--without-debug \
--disable-big-core \
--without-ada
make
mkdir -p builds/debian/DEBIAN
make install DESTDIR=~/ncurses/ncurses-5.5/builds/debian
cd ~/ncurses/ncurses-5.5/builds
vi debian/DEBIAN/control
find ./debian -type d | xargs chmod 755
fakeroot dpkg-deb --build debian
mv debian.deb ncurses-5.5-1_mips.deb
dpkg -i --force-architecture ./ncurses-5.5-1_mips.deb

(Error) messages seen during make with ncurses support:
[sbox-DV20x0: ~/nzbget/nzbget-0.7.0] > make
/scratchbox/tools/bin/make  all-am
make[1]: Entering directory `/home/rhermsen/nzbget/nzbget-0.7.0'
if 
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++
-DHAVE_CONFIG_H -I. -I. -I.   -I/usr/include/libxml2   -I/usr/include
-g -O2 -MT ArticleDownloader.o -MD -MP -MF
".deps/ArticleDownloader.Tpo" -c -o ArticleDownloader.o
ArticleDownloader.cpp; \
        then mv -f ".deps/ArticleDownloader.Tpo"
".deps/ArticleDownloader.Po"; else rm -f
".deps/ArticleDownloader.Tpo"; exit 1; fi
if 
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++
-DHAVE_CONFIG_H -I. -I. -I.   -I/usr/include/libxml2   -I/usr/include
-g -O2 -MT BinRpc.o -MD -MP -MF ".deps/BinRpc.Tpo" -c -o BinRpc.o
BinRpc.cpp; \
        then mv -f ".deps/BinRpc.Tpo" ".deps/BinRpc.Po"; else rm -f
".deps/BinRpc.Tpo"; exit 1; fi
In file included from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/string:53,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:47,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:47,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/ios:49,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/istream:45,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/fstream:45,
                 from BinRpc.cpp:38:
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/basic_string.h:148:
error: `_Atomic_word' does not name a type
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/basic_string.h:
In member function `void std::basic_string<_CharT, _Traits,
_Alloc>::_Rep::_M_dispose(const _Alloc&)':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/basic_string.h:215:
error: `__exchange_and_add' is not a member of `__gnu_cxx'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/basic_string.h:
In member function `_CharT* std::basic_string<_CharT, _Traits,
_Alloc>::_Rep::_M_refcopy()':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/basic_string.h:226:
error: `__atomic_add' is not a member of `__gnu_cxx'
In file included from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:47,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/ios:49,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/istream:45,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/fstream:45,
                 from BinRpc.cpp:38:
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:
At global scope:
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:349:
error: `_Atomic_word' does not name a type
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:
In constructor `std::locale::facet::facet(size_t)':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:375:
error: class `std::locale::facet' does not have any field named
`_M_refcount'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:
In member function `void std::locale::facet::_M_add_reference()
const':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:403:
error: `__atomic_add' is not a member of `__gnu_cxx'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:403:
error: `_M_refcount' undeclared (first use this function)
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:403:
error: (Each undeclared identifier is reported only once for each
function it appears in.)
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:
In member function `void std::locale::facet::_M_remove_reference()
const':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:408:
error: `__exchange_and_add' is not a member of `__gnu_cxx'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:408:
error: `_M_refcount' undeclared (first use this function)
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:
At global scope:
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:454:
error: `_Atomic_word' does not name a type
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:493:
error: `_Atomic_word' does not name a type
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:
In member function `void std::locale::_Impl::_M_add_reference()':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:508:
error: `__atomic_add' is not a member of `__gnu_cxx'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:508:
error: `_M_refcount' undeclared (first use this function)
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:
In member function `void std::locale::_Impl::_M_remove_reference()':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:513:
error: `__exchange_and_add' is not a member of `__gnu_cxx'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/locale_classes.h:513:
error: `_M_refcount' undeclared (first use this function)
In file included from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/ios:49,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/istream:45,
                 from
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/fstream:45,
                 from BinRpc.cpp:38:
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:
At global scope:
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:431:
error: `_Atomic_word' does not name a type
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:497:
error: `_Atomic_word' does not name a type
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:
In constructor `std::ios_base::_Callback_list::_Callback_list(void
(*)(std::ios_base::event, std::ios_base&, int), int,
std::ios_base::_Callback_list*)':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:435:
error: class `std::ios_base::_Callback_list' does not have any field
named `_M_refcount'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:
In member function `void
std::ios_base::_Callback_list::_M_add_reference()':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:438:
error: `__atomic_add' is not a member of `__gnu_cxx'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:438:
error: `_M_refcount' undeclared (first use this function)
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:
In member function `int
std::ios_base::_Callback_list::_M_remove_reference()':
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:443:
error: `__exchange_and_add' is not a member of `__gnu_cxx'
/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/../lib/gcc/mips-linux-uclibc/3.4.2/../../../../include/c++/3.4.2/bits/ios_base.h:443:
error: `_M_refcount' undeclared (first use this function)
make[1]: *** [BinRpc.o] Error 1
make[1]: Leaving directory `/home/rhermsen/nzbget/nzbget-0.7.0'
make: *** [all] Error 2
[sbox-DV20x0: ~/nzbget/nzbget-0.7.0] >



2011/7/30 Ron Hermsen <ronherm...@gmail.com>
>
> Yes..., I solved 3 issues in one.....
>
> I solved it by setting the following environment variable before the 
> configure step:
> export 
> CXX=/scratchbox/compilers/uclibc-crosstools_gcc-3.4.2_uclibc-20050502/bin/mips-linux-uclibc-g++
>
> This solved the make error " `_Atomic_word' does not name a type" for the 
> following packages:
> libsigc++-1.9.16
> par2cmdline-0.4
> nzbget-0.7.0
>
> (so no depenency issue as I suspected earlier)
>
> But I don't know if this is a problem just with my setup or if this is a 
> general issue.
> Wat is the correct way to correct the setup?
_______________________________________________
Scratchbox-users mailing list
Scratchbox-users@lists.scratchbox.org
http://lists.scratchbox.org/cgi-bin/mailman/listinfo/scratchbox-users

Reply via email to