Hi John:

Do u mean modify /external/ppp/pppd/Android.mk to include
"LOCAL_CFLAGS += -fno-short-enums" ?
I have tried both 2 ways but the connection still didn't go through~
Do I missed anything?

Herb.

On 12月9日, 上午9時30分, "john wang" <[email protected]> wrote:
> The real way is:
> LOCAL_CFLAGS += -fno-short-enums
> Android compiler default setting is 1 byte for enum type.
> 2008/12/9 Ulrik Bech Hald <[email protected]>
>
>
>
> > Okay, tried the solution suggested by Misael. Changed the ../external/
> > ppp/pppd/Android.mk to include the following:
>
> > # To force sizeof(enum) = 4
> > ifneq ($(TARGET_SIMULATOR),true)
> > LOCAL_CFLAGS += -mabi=aapcs-linux
> > endif
>
> > This will prevent the Android compiler from using short enums when
> > compiling pppd.
>
> > ..And it works! Finally able to browse using the  PPP-GPRS connection.
>
> > Ulrik
>
> > On 3 Dec., 15:20, Ulrik Bech Hald <[email protected]> wrote:
> > > We're facing a similar problem as WANG Xiaoguang, refer tohttp://
> > groups.google.com/group/android-porting/browse_thread/thread/5...
>
> > > Our ppp0 interface is up but connections to the outside network won't
> > > go through.
>
> > > What are the changes you did to the enum to make it work?
>
> > > Do you think the problems are caused by the enum in the npioctl struct
> > > or the fact that pppd was ported to android, and perhaps then modified
> > > to directly use the ioctl interface w/ enums?
>
> > > Thanks,
> > > Ulrik
>
> > > On 14 Nov., 02:28, "Misael Lopez" <[email protected]> wrote:
>
> > > > Don't you think the enum problem is more related to "short enums"?
>
> > > > Have you tried to compile your code also with -fno-short-enums cflag?
>
> > > > Misa
>
> > > > 2008/11/13 jyukon <[email protected]>:
>
> > > > > Hi,
>
> > > > > I had the same issues when I implemented UVC camera support. In my
> > > > > case,
> > > > > struct v4l2_requestbuffers in linux/videodev2.h is the problem. I
> > > > > settled it using android toolchain with CONFIG_CC_OPTIMIZE_FOR_SIZE
> > > > > option.
>
> > > > > On 11月14日, 午前10:58, koba <[email protected]> wrote:
> > > > >> Hi
>
> > > > >> Could you share which enum cause problem?
>
> > > > >> I am fighting some strange android behavior in my board.
> > > > >> Your information might help me.
>
> > > > >> On 11月13日, 午後11:22, WANG Xiaoguang <[email protected]> wrote:
>
> > > > >> > Finally I resolved this problem.
>
> > > > >> > It seems a bug in kernel, which is caused by using 'enum' in a
> > struct
> > > > >> > in Linux's kernel.
>
> > > > >> > Different compilers use different data types on 'enum' (maybe
> > 'char'
> > > > >> > or 'int')
>
> > > > >> > In my android, the kernel's 'enum' size is 4, while the size of
> > 'enum'
> > > > >> > in ELF binarys is 1.
> > > > >> > Then some options in kernel is incorrect.
>
> > > > >> > It's really a bad idea to use 'enum' in a struct, especially
> > whichwill
> > > > >> > be used by other applications outside the module which defines it,
> > > > >> > but unfortunately there are still some misuses in Linux's kernel.
>
> > > > >> > On 11月11日, 下午5时24分, "David Turner" <[email protected]> wrote:
>
> > > > >> > > -cc android-developers +cc android-porting
>
> > > > >> > > what about using strace to see what the problem might be ?
>
> > > > >> > > On Mon, Nov 10, 2008 at 9:18 AM, Wang Xiaoguang <
> > [email protected]>wrote:
>
> > > > >> > > > I have successfully created a GPRS connection to my ISP,
>
> > > > >> > > > # busybox ifconfig ppp0
> > > > >> > > > ppp0      Link encap:Point-to-Point Protocol
> > > > >> > > >           inet addr:10.8.232.45  P-t-P:10.8.232.45  Mask:
> > 255.255.255.255
> > > > >> > > >           UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500
> >  Metric:1
> > > > >> > > >           RX packets:11 errors:1 dropped:0 overruns:0 frame:0
> > > > >> > > >           TX packets:24 errors:0 dropped:0 overruns:0
> > carrier:0
> > > > >> > > >           collisions:0 txqueuelen:3
> > > > >> > > >           RX bytes:510 (510.0 B)  TX bytes:1386 (1.3 KiB)
>
> > > > >> > > > # busybox route
> > > > >> > > > Kernel IP routing table
> > > > >> > > > Destination     Gateway         Genmask         Flags Metric
> > Ref    Use
> > > > >> > > > Iface
> > > > >> > > > default         10.8.232.45     0.0.0.0         UG    0
> >  0        0
> > > > >> > > > ppp0
>
> > > > >> > > > But I can not connect to remote hosts, eg:
> > > > >> > > > busybox wgethttp://202.108.22.5/&;
> > > > >> > > > (Never succeed)
>
> > > > >> > > > When I am trying to make a TCP connection, both the "RX
> > packets" and "TX
> > > > >> > > > packets" of ppp0 increases.
>
> > > > >> > > > I have tried these commands in my Linux on PC and they worked
> > correctly.
>
> > > > >> > > > How can I get GPRS worked in my Android ?- 隐藏被引用文字 -
>
> > > > >> > > - 显示引用的文字 -
>
>
--~--~---------~--~----~------------~-------~--~----~
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting
-~----------~----~----~----~------~----~------~--~---

Reply via email to