error: invalid 'asm': invalid operand for code 'w'


google 出結果

http://stackoverflow.com/questions/15623609/including-curl-into-the-android-aosp

..................................................................................................................................................................................................

You're probably getting this error because of some bad includes. One of the commonest reasons this is happenning is because you are compiling cURL with your host includes.

Check that your Makefiles does not contain hard-coded references to /usr/include or any other include paths. This is apparently a common error when people are trying to cross-compile on x86 for ARM. Your compiler is confused because he is trying to parse assembly network instructions such as the rorw (“rotate word right”) x86 instruction as the ror (“rotate right”) ARM instruction.

Some C functions such as htons, which provides network byte order translation (ensuring that there are no endianness issues for example), are implemented as preprocessor macros that contain inline assembly. And an ARM compiler cannot understand x86 instructions, this is why you're getting this error. These kind of network translation functions are heavily used in cURL, so the odds are good that this might be your problem.

Here is a   http://thesoftwarerogue.blogspot.fr/2010/05/porting-of-libcurl-to-android-os-using.html   that should help you port cURL on Android. The guy does not compile cURLwith Android but exports cURL's functions through JNI.

 

......................................................................................................................................................................................................

也就是說不要 /usr/include 把這個設置在makefile里面。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM