aMule Forum
English => Compilation problems => Topic started by: gtoso on June 25, 2008, 06:51:17 AM
-
Hi,
I have problem compile SVN 20080624 on OSX 10.5.3 Intel,
the same options works fine with 20080623.
wxMac 2.8.8
g++ -DHAVE_CONFIG_H -I. -I. -I.. -no-cpp-precomp -D_INTL_REDIRECT_MACROS -DNOPCH -DUSE_WX_EXTENSIONS -I/Users/administrator/mulo/wxMac-2.8.8/osx-build/lib/wx/include/
mac-unicode-release-static-2.8 -I/Users/administrator/mulo/wxMac-2.8.8/include -I/Users/administrator/mulo/wxMac-2.8.8/contrib/include -D_FILE_OFFSET_BITS=64 -D_LARGE_
FILES -D__WXMAC__ -DwxUSE_GUI=0 -DENABLE_UPNP=1 -I./libs -Ilibs -I./include -I/opt/local/include -D__WEAK_CRYPTO__ -DAMULE_DAEMON -I/opt/local/include -W -Wall -Wshad
ow -Wundef -O2 -I/Users/administrator/mulo/wxMac-2.8.8/osx-build/lib/wx/include/mac-unicode-release-static-2.8 -I/Users/administrator/mulo/wxMac-2.8.8/include -I/User
s/administrator/mulo/wxMac-2.8.8/contrib/include -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXMAC__ -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.5.sdk -O2 -c
-o amuled-amuled.o `test -f 'amuled.cpp' || echo './'`amuled.cpp
amule.h:409: error: <E2><80><98>wxEndProcessData<E2><80><99> was not declared in this scope
amule.h:409: error: template argument 2 is invalid
amule.h:409: error: template argument 4 is invalid
amule.h:409: error: invalid type in declaration before <E2><80><98>;<E2><80><99> token
amule.h:409: error: <E2><80><98>wxEndProcessData<E2><80><99> was not declared in this scope
amule.h:409: error: template argument 2 is invalid
amule.h:409: error: template argument 4 is invalid
amule.h:409: error: invalid type in declaration before <E2><80><98>;<E2><80><99> token
amuled.cpp: In member function <E2><80><98>virtual int CDaemonAppTraits::WaitForChild(wxExecuteData&)<E2><80><99>:
amuled.cpp:470: error: invalid types <E2><80><98>EndProcessDataMap[int]<E2><80><99> for array subscript
amuled.cpp: In function <E2><80><98>void OnSignalChildHandler(int, siginfo_t*, void*)<E2><80><99>:
amuled.cpp:500: error: <E2><80><98>EndProcessDataMap<E2><80><99> is not a class or namespace
amuled.cpp:500: error: missing template arguments before <E2><80><98>it<E2><80><99>
amuled.cpp:500: error: expected `;' before <E2><80><98>it<E2><80><99>
amuled.cpp:501: error: <E2><80><98>it<E2><80><99> was not declared in this scope
amuled.cpp:501: error: request for member <E2><80><98>end<E2><80><99> in <E2><80><98>endProcDataMap<E2><80><99>, which is of non-class type <E2><80><98>EndProcessDataM
ap<E2><80><99>
amuled.cpp:504: error: request for member <E2><80><98>erase<E2><80><99> in <E2><80><98>endProcDataMap<E2><80><99>, which is of non-class type <E2><80><98>EndProcessDat
aMap<E2><80><99>
amuled.cpp: In member function <E2><80><98>virtual int CDaemonAppTraits::WaitForChild(wxExecuteData&)<E2><80><99>:
amuled.cpp:470: error: invalid types <E2><80><98>EndProcessDataMap[int]<E2><80><99> for array subscript
amuled.cpp: In function <E2><80><98>void OnSignalChildHandler(int, siginfo_t*, void*)<E2><80><99>:
amuled.cpp:500: error: <E2><80><98>EndProcessDataMap<E2><80><99> is not a class or namespace
amuled.cpp:500: error: missing template arguments before <E2><80><98>it<E2><80><99>
amuled.cpp:500: error: expected `;' before <E2><80><98>it<E2><80><99>
amuled.cpp:501: error: <E2><80><98>it<E2><80><99> was not declared in this scope
amuled.cpp:501: error: request for member <E2><80><98>end<E2><80><99> in <E2><80><98>endProcDataMap<E2><80><99>, which is of non-class type <E2><80><98>EndProcessDataM
ap<E2><80><99>
amuled.cpp:504: error: request for member <E2><80><98>erase<E2><80><99> in <E2><80><98>endProcDataMap<E2><80><99>, which is of non-class type <E2><80><98>EndProcessDat
aMap<E2><80><99>
lipo: can't figure out the architecture type of: /var/folders/62/62MiKaZIFIin1eLGeoYagk+++TI/-Tmp-//ccoPkGks.out
make[3]: *** [amuled-amuled.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
-
Same error in Tiger/PPC
(with similar options, plus GeoIP)
g++ -DHAVE_CONFIG_H -I. -I. -I.. -no-cpp-precomp -D_INTL_REDIRECT_MACROS -DNOPCH -DUSE_WX_EXTENSIONS -I/Users/gtoso/mulo/wxMac-2.8.8/osx-build/lib/wx/include/mac-unicode-release-static-2.8 -I/Users/gtoso/mulo/wxMac-2.8.8/include -I/Users/gtoso/mulo/wxMac-2.8.8/contrib/include -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXMAC__ -DwxUSE_GUI=0 -DENABLE_UPNP=1 -I./libs -Ilibs -I./include -I/opt/local/include -D__WEAK_CRYPTO__ -DAMULE_DAEMON -I/opt/local/include -W -Wall -Wshadow -Wundef -O2 -I/Users/gtoso/mulo/wxMac-2.8.8/osx-build/lib/wx/include/mac-unicode-release-static-2.8 -I/Users/gtoso/mulo/wxMac-2.8.8/include -I/Users/gtoso/mulo/wxMac-2.8.8/contrib/include -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXMAC__ -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -O2 -c -o amuled-amuled.o `test -f 'amuled.cpp' || echo './'`amuled.cpp
amule.h:409: error: 'wxEndProcessData' was not declared in this scope
amule.h:409: error: template argument 2 is invalid
amule.h:409: error: template argument 4 is invalid
amule.h:409: error: invalid type in declaration before ';' token
amule.h:409: error: 'wxEndProcessData' was not declared in this scope
amule.h:409: error: template argument 2 is invalid
amule.h:409: error: template argument 4 is invalid
amule.h:409: error: invalid type in declaration before ';' token
amuled.cpp: In member function 'virtual int CDaemonAppTraits::WaitForChild(wxExecuteData&)':
amuled.cpp:470: error: invalid types 'EndProcessDataMap[int]' for array subscript
...
-
After this report (http://forum.amule.org/index.php?topic=11997.0), usage of wx/unix/execute.h was disabled for Mac OS X. I've reverted this, please use the following patch in the meantime.
--- trunk/src/amule.h 2008-06-23 12:56:34 UTC (rev 8740)
+++ trunk/src/amule.h 2008-06-23 13:41:58 UTC (rev 8741)
@@ -36,7 +36,9 @@
#ifndef __WXMSW__
#include <map>
#include <signal.h>
- #ifndef __WXMAC__
- #include <wx/unix/execute.h>
- #endif
+ #include <wx/unix/execute.h>
#endif // __WXMSW__
-
After this report (http://forum.amule.org/index.php?topic=11997.0), usage of wx/unix/execute.h was disabled for Mac OS X. I've reverted this, please use the following patch in the meantime.
It worked fine with 20080625,
thanks.
Tested only on Leopard/Intel.
-
20080626 compiles fine on Leopard and on Tiger :)
Now I have another problem (maybe due to a my compile error):
I compiled wxMac-2.8.8/aMule on Tiger/PPC and on Leopard/Intel with the same options
(except for the MacOSX SDK), using the same script in attachment.
Leopard version is slow and go wrong:
2008-06-26 20:08:37: ClientCreditsList.cpp(378): Credits: Error while creating signature: OS_Rng: open /dev/urandom operation failed with error 24
...
2008-06-26 20:08:44: Logger.cpp(272): Error: Failed to get the working directory (error 24: Too many open files)
Details in attachment.
Tiger version go well on Tiger and on Leopard!!!!
Respect to the past I have modify some things to make it work with new SVN and on Leopard :
1) previously I compiled wxMac(2.8.7) without MacPorts libs (using builtin ones),
now on Leopard it works but then aMule fails to compile,
so I have compiled wxMac with external libiconv (--with-libiconv-prefix=/opt/local), see here:
http://forum.amule.org/index.php?topic=15196.0
2) removed --with-geoip-static: in past it do nothing (I think for an error in configure), now it works but on OSX:
ld: unknown option: -Bstatic
collect2: ld returned 1 exit status
3) wxMac uses always 10.4 SDK, I forced it to use 10.5 SDK on Leopard,
on Tiger it doesn't guess minimal osx version (on Leopard yes) so I added --with-macosx-version-min=