Thanks for your suggestions guys!

Well, I changed a little bit my configure script....here you are:
#! /bin/bash
CONFIG_OPTS="--host=powerpc-unknown-linux --target=powerpc-unknown-linux --build=i686-pc-linux --prefix=/usr/local --with-toolkit=base --with-wxdir=/home/marco/My_Stuff/syno/wxWidgets-2.8.11 --disable-monolithic --enable-amule-daemon --enable-amulecmd --disable-debug --with-denoise-level=0"
CC=/usr/local/powerpc-linux-gnuspe/bin/powerpc-linux-gnuspe-gcc
export CC
CXX=/usr/local/powerpc-linux-gnuspe/bin/powerpc-linux-gnuspe-g++
export CXX
LD=/usr/local/powerpc-linux-gnuspe/bin/powerpc-linux-gnuspe-ld
export LD
RANLIB=/usr/local/powerpc-linux-gnuspe/bin/powerpc-linux-gnuspe-ranlib
export RANLIB
CFLAGS="-I/usr/local/powerpc-linux-gnuspe/include -mcpu=8548 -mhard-float -mfloat-gprs=double"
export CFLAGS
CXXFLAGS="$CFLAGS"
export CXXFLAGS
LDFLAGS="-L/usr/local/powerpc-linux-gnuspe/lib"
export LDFLAGS
./configure $CONFIG_OPTS $*
Thus I added CXX and CXXFLAGS, removed amuleweb from config and set denoise-level=0.
Now it seems like it's linking correctly, maybe my fault in not setting CXX and CXXFLAGS caused the problem.
Right now I have some compiling issue, it seems like there's some ASM code which is not correctly handled by the specific target platform?
Is my analysis correct?
Anyway...here you are my error:
In file included from amuled.cpp:75:
/usr/include/sys/wait.h:116: warning: `__pid_t wait(void*)' hides constructor for `union wait'
amuled.cpp: In member function `void CSocketSet::FillSet(int&)':
amuled.cpp:257: error: impossible constraint in `asm'
make[3]: *** [amuled-amuled.o] Errore 1
make[3]: uscita dalla directory «/home/marco/My_Stuff/syno/aMule-AdunanzA-2010.1-2.2.6/src»
make[2]: *** [all-recursive] Errore 1
make[2]: uscita dalla directory «/home/marco/My_Stuff/syno/aMule-AdunanzA-2010.1-2.2.6/src»
make[1]: *** [all-recursive] Errore 1
make[1]: uscita dalla directory «/home/marco/My_Stuff/syno/aMule-AdunanzA-2010.1-2.2.6»
make: *** [all] Errore 2
Well here it is the function:
void CSocketSet::FillSet(int &max_fd)
{
FD_ZERO(&m_set);
for(int i = 0; i < m_count; i++) {
FD_SET(m_fds[i], &m_set);
if ( m_fds[i] > max_fd ) {
max_fd = m_fds[i];
}
}
}
I'm not good at all in ASM (the only one I barely new was the one of PD32....I know...shame on me!

)
thus, just to see if I cold end the compile phase, I just tried to comment the line 257:
FD_ZERO(&m_set);
Anyway, the problem came out again in the function below the one incriminated
void CSocketSet::Detected(void (GSocket::*func)())
{
for (int i = 0; i < m_count; i++) {
int fd = m_fds[i];
if ( FD_ISSET(fd, &m_set) ) {
GSocket *socket = m_gsocks[fd];
(*socket.*func)();
}
}
}
The problem here is in line 271
if ( FD_ISSET(fd, &m_set) ) {
another ASM function, stating that it could not find a registry or something like that!
Then, if the problem is that the target platform cannot handle ASM code which is specifically written for, I suppose, Intel ASM, how can amule be compiled for another target platform different from the Intel one? I must be wrong....or I hope so!

Thanks once more for any help you could give me!