Compiling Cryptophone - Windows Mobile Development and Hacking General

Because it seems to be a often requested topic I wanted to give back my experince with compiling the in topic mentioned source code and how really value it is for anything.
I started this because I got the code for review for a intrested customer but my experince with arm and gcc is rather low. So i started reading up on the cross compiler and came accros serveral dificults with the build enviorment.
First the code seemed to be aimed to a rather old version of gcc, newer cross compiler toolchains won't compile it.
So I obtained a 2004 linux (redhat 8) which fitted best in the time mentioned in the headers source was last edited. On this system I was able to build the cross-arm toolchain like mentioned in the readmes without any problem.
With the builded toolchain I was also able to compile celp_fxp and with the make file. i mentioned that in the makefile there is a (intentionally) added error. After the last source file there was fxlp.c added which is not a file present in the tree. After removing this the .o files builded fine.
I imported the .o files produced back to windows Embended Visual C++, opened the project and started a compile like further explainedin the readme docs. Sadly I now face this error:
acb_parm.o : fatal error LNK1190: invalid fixup found, type 0x0010
It is possible this error occures from a wrong compiled gmp libary for which no build isntructions were given. If anybody has any value information on this I would greatly appriciate this. As I said earlier I had really no experince with gcc form cross arm before i started here. I always left out linux compiler of my embended world.
I am working on this now since a few days, maybe someone else got experince in this he/she wants to share. Thansk for reading.

Related

Problems compiling apps for Universal under Linux

Sorry for a lame question, but i've got a problem. I've compiled a simple hello-world application using arm-gcc 3.4.3 (compiled under x86 linux using gcc compiler for ARM) with default settings. When I was trying to start it under Universal, I got the message 'Invalid instruction' (or something like that).
Please provide me with a working example (command-line arguments for building and etc) or some instructions on build process, if anybody has one.
Thanks.
bazis said:
I've compiled a simple hello-world application using arm-gcc 3.4.3 (compiled under x86 linux using gcc compiler for ARM) with default settings.
Click to expand...
Click to collapse
You don't tell where does the gcc-3.4.3 come from.
With the 3.4.1 stadalone toolchain from
ftp://ftp.handhelds.org/projects/toolchain
it is just
Code:
/usr/local/arm/3.4.1/bin/arm-linux-gcc -o hello hello.c
If you want to compile GUI apps or big packages, then you should read
http://www.openembedded.org/wiki/GettingStarted
I downloaded it from www.gnuarm.com. It worked OK when compiled ROM images for my ARM7TDMI-based boards.
Thanks for the link, I'll try it today.
And, finally, another lame question: did anybody tried to build gcc 4.1 for cross-compiling from x86 to ARM? Or it is possible to use the script from the FTP to build it?

Cross-compiling, what am i doing wrong

Hello!
as the title indicates I am having trouble cross-compiling. hello world compiles perfectly but bigger programs just wont give in..
I downloaded the android source from git and compiled just the way the website (http://source.android.com/download) says you should (is there anyway to verify that its compiled correctly?)
Then I use the agcc python script(http://plausible.org/andy/agcc) for the linking but when i compile i always get trouble about it not being able to find certain defined fields or other types. So basicly i followed the second part of what this wiki says (eventough using a toolchain from codesourcery for example and cc staticly. It also fails...)
What im really asking is how and what do you guys use to cross-compile to android?
Richard_Xeli said:
Hello!
as the title indicates I am having trouble cross-compiling. hello world compiles perfectly but bigger programs just wont give in..
I downloaded the android source from git and compiled just the way the website (http://source.android.com/download) says you should (is there anyway to verify that its compiled correctly?)
Then I use the agcc python script(http://plausible.org/andy/agcc) for the linking but when i compile i always get trouble about it not being able to find certain defined fields or other types. So basicly i followed the second part of what this wiki says (eventough using a toolchain from codesourcery for example and cc staticly. It also fails...)
What im really asking is how and what do you guys use to cross-compile to android?
Click to expand...
Click to collapse
Hello,
i am having problems with the linker too! i am using the NDK (because it actually does C / C++ code) and the code compiles with very few warnings on some instructions but works well otherwise, it just WOULD NOT LINK the stuff together!! one interesting setting i noticed in some public makefiles for the NDK i noticed is that they actually set the linker to /system/bin/linker, which is obviously a file on the target device. but i don't know how it would access it? any ideas?
BTW: post your error(s) please
Try this
The system won't let me post a link (as a new user), however there is a really good tutorial on native android development and debugging using the AOSP build system. Search on Aton International Incorporated and click on blogs in the menubar. I am in no way associated with the company, just happy to finally be able to cross-compile, link and debug for android.
Maybe someone who has more posts could post a link here.
http://www.aton.com/android-native-development-using-the-android-open-source-project/

Poking around the Source Code

I am trying to find information on how to poke around my own phone's source code (if possible, Sprint HTC Hero) and also the Android Source Code which is downloadable.
I'd like to see how the apps look, and how I could change them. I also want to know how to go about editing and loading that source code up on a phone.
Is this possible with my phone? Or do I need a special phone to do so? I'd like to know how these folks are going about creating these special ROMs for phones, and how someone can edit it to their liking, and then compile it for a specific device.
source.android.com is where you should find what you need.
I did find that, and it works someone, but the address isn't right, and for some reason I can't install an older version of Java on my Ubuntu VM. Maybe because it's 10.4? Has anyone else been able to download the source code via Google's instructions? On a newer machine?
sstrickland816 said:
I did find that, and it works someone, but the address isn't right, and for some reason I can't install an older version of Java on my Ubuntu VM. Maybe because it's 10.4? Has anyone else been able to download the source code via Google's instructions? On a newer machine?
Click to expand...
Click to collapse
If you add the Jaunty repositories to your sources.list file you should be able to download sun-java5-*
If i find the exact apt lines I will post them later.
Another thought - Switch to Debian Lenny - I switched from Ubuntu after I upgraded to 10.04 and absolutely hated 10, but I am loving Lenny.
EDIT:
add
deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
to your /etc/apt/sources.list
then do
apt-get update
apt-get install sun-java5-jre sun-java5-jdk
Thanks for the update, I'll try that and see how far I get.
From what I gathered, Ubuntu was the only supported Linux operating system that I'd be able to get the source code of Android for...
I understand that the size of Android is so massive, an organized way to download it is necessary, but why isn't this just simple like FTP access?

[Q]andriod kernel of mega is same like wildfire by proof!!!

http://htc-linux.org/wiki/index.php?title=Mega
i read that the kernel is same wont that help porting andriod with respect to some drivers change!!!
no one answered
the problem is our first developer can't keep the android project...
hi
how can i debug this files and run???
currently I'm trying to cross-compile a most recent wildfire kernel I found on htc server using a configuration I personally made for our mega. The problem is there are many errors in the source code...
re.:
In my opinion we start build android from beginning. My problem is in my OS on my PC. I have Windows XP and building and modifing found only on Linux. I find this page with porting guide. It is step by step How to create boot screen, How to setup Connectivity...
source.android.com/porting/bring_up.html
On this page are programs for debug and download android source code...
Anyone write.
Move to general as not rom development
I'm using linux, this is why I want to try to cross-compile a kernel for our device, like I just said, source code has a large number of errors, I don't know why...
if you are interested, I can share the kernel configuration I made myself...
Now I install Ubuntu 10. It was compilation found in this version of Linux??? Where programs can I download? Now I have Git, Eclipse and Python 2.7. How can I install .tar packs on Ubuntu zito882000?
if you are new as a linux user it's quite difficult to explain, you need gcc plus the same programs a normal user has to compile a kernel.
The difference is in the way of compilation, a parameter that does a compilation for arm architectures....do you have some kernel compilation experience?
re.:
zito882000 said:
if you are new as a linux user it's quite difficult to explain, you need gcc plus the same programs a normal user has to compile a kernel.
The difference is in the way of compilation, a parameter that does a compilation for arm architectures....do you have some kernel compilation experience?
Click to expand...
Click to collapse
windows is gold.
with compilation i haven't any experience. I only begin in programming languages C, C++ and VB. I compile only my apps in visual studio. And i have nice experience with photoshop.
it isn't exactly the same thing, in a kernel you have a large number of drivers to compile, not a only one program...
Here cyberciti.biz/tips/compiling-linux-kernel-26.html you can find a simple guide!
The most important part is the command "make" that need some different parameters to do a cross-compilation for ARM processors ^^
thx
I saw the instructions and understand him. If I somehow help you write to my icq: 484038954 or Skype: vasek-smekal.
So far, thanks
I just bought an HTC Hero with native android.
If you want to try again I share with you my kernel configuration file and a link where you can download the kernel source I used.
(remember to rename "config.txt" in ".config" with the point and without the extension)
KERNEL SOURCE -> http://developer.htc.com/ (must choose "HTC Wildfire - Froyo - 2.6.32 kernel source code")
ARM LINUX GCC -> http://www.handhelds.org/download/projects/toolchain/archive/arm-linux-gcc-3.3.1-030820.tar.bz2

Issues with compiling libhybris in scratchbox2 target

Sup XDA, there is one question about porting the sailfish OS. I am guided by the official documentation, according to the latest guide on HADK - https://sailfishos.org/wp-content/u...OS-HardwareAdaptationDevelopmentKit-2.0.1.pdf
I encountered a problem with the point 7.2.1. When performing the rpm/dxd/helpers/build_packages.sh. there is installation and assembly of packages, but it breaks off when creating a middlevare, namely, the libhybris. Here is the complete log of the assembly - https://paste.debian.net/plain/997702
As I understood from the logs myself to build the libhybris, I need to use the compiler with C++11 support, but in the scratchbox2 the old version of the gcc-4.6.3 version is used, which does not understand the standart C++11. I tried to change the CFLAGS from "--std=gnu++11" to "--std=gnu++0x" , but the libhybris does not compile with the flag of the old standards.
What do you propose to do? How to update the compiler in a scratchbox2 target?
P.S. wrote it via google translate, dont be offended pls
memewarrior said:
Sup XDA, there is one question about porting the sailfish OS. I am guided by the official documentation, according to the latest guide on HADK - https://sailfishos.org/wp-content/u...OS-HardwareAdaptationDevelopmentKit-2.0.1.pdf
I encountered a problem with the point 7.2.1. When performing the rpm/dxd/helpers/build_packages.sh. there is installation and assembly of packages, but it breaks off when creating a middlevare, namely, the libhybris. Here is the complete log of the assembly - https://paste.debian.net/plain/997702
As I understood from the logs myself to build the libhybris, I need to use the compiler with C++11 support, but in the scratchbox2 the old version of the gcc-4.6.3 version is used, which does not understand the standart C++11. I tried to change the CFLAGS from "--std=gnu++11" to "--std=gnu++0x" , but the libhybris does not compile with the flag of the old standards.
What do you propose to do? How to update the compiler in a scratchbox2 target?
P.S. wrote it via google translate, dont be offended pls
Click to expand...
Click to collapse
Heyyo, the guide has a messed up sb2 section.
I can't load your Pastebin link but please check my thread here to see how I resolved the bad sb2 guide
https://together.jolla.com/question/172682/unknown-tag-systemd_requires/
Also, just in case you get stuck on 8.5 of that guide here's how I fixed that too
https://together.jolla.com/question...cregister-for-85-building-the-image-with-mic/

Categories

Resources