Where is the .bin? [qtopia]

Slash
Hi guys, it's my second day with the board.
I have built arm-qtopia and x86-qtopia according to these instructions:
http://equallybad.blogspot.com/2010/02/project-how-to-setup-default-dev-...

I built the hello program and the output(.bin) was found in this location:
/opt/FriendlyARM/mini2440/arm-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/bin

I transfered it to the board and it ran fine.

I then changed the main.cpp in the hello program (just replaced the label)
and built it again. I transfered the .bin to the board(after removing the
old file), but the output of the app was same. 

I then tried another project according to this link:
http://farm2440.blogspot.com/2010/07/hello-world-with-gui-application-fo...

The build was successful (no errors), but there was no .bin in the project
directory. So where is the output file(.bin) produced? Am I doing anything
wrong?

Please help me.
Thanks.

jrh_engineering
If you are speaking of the hello example at:
/opt/FriendlyARM/mini2440/arm-qtopia/hello look at the hello.pro file with
gedit or similar text editor.  There is a line as follows:

DESTDIR  = $(QPEDIR)/bin

Next go back to terminal and enter:
$ echo $QPEDIR
On my system I get:
/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia

In the build file in the same directory is the line:
source
/opt/FriendlyARM/mini2440/arm-qtopia/qtopia-2.2.0-FriendlyARM/setQpeEnv 

If you go to that directory and cat the file setQpeEnv you will see the
line: 
export
QPEDIR=/opt/FriendlyARM/mini2440/arm-qtopia/qtopia-2.2.0-FriendlyARM/qtopia

So first the environment variable QPEDIR is set as such, then the
destination directory is set to that value plus the /bin subdirectory.  I
change my .pro files to contain the line:
DESTDIR      = . so the binary output gets put in the same directory as the
source files.

James

jrh_engineering
'In the same directory' I mean the "hello" example at
/opt/FriendlyARM/mini2440/arm-qtopia/hello.  Also, depending on how you run
your scripts (for building) Linux may or may not retain changes made in the
script.  This is because Linux, by default, runs it's scripts in a
subshell.  For this reason your $ echo $QPEDIR may not give the same
results as in my system, especially if you just open a terminal and execute
the command.  Try executing the command after executing the "build" script.
 If you get the same result as myself, then your environment variables were
able to persist beyond the script.  Otherwise they will only be good for
the duration of the script.  Good enough, but you will be unable to confirm
the environment variables after the script runs.

If you do not know about how scripts work, you will need to do some
research.  I add my environment variables to my ~/.bashrc file, so they are
automatically executed when I open a terminal and persist for the duration
of the terminal session.  Otherwise running your scripts with $ .
scriptname or $ . ./scriptname will do the job.  

I am running Ubuntu Linux which is Debian based.  If you are running a
different family of Linux, the file "~/.bashrc" may not apply to your
system.

James

Slash
Hi, thanks for replying.

I got what you are saying and then instead of changing the env variables, i
chose to use full paths for compiling and making projects. This is what I
did:
(1) Copied the hello project to a separate directory.
(2) Used qmake (in arm-qtopia) to make the project (qmake -project).
Succeeded.
(3) Used qmake (again) to generate the makefile. (qmake hello.pro).
Succeeded.
(4) Then typed ('make'). Gave errors about locating uic.
(5) So, I used uic (in arm-qtopia) to generate hello_base.h and
hello_base.cpp. Succeeded.
(6) Removed the above step from the makefile.
(7) Then did make. Failed, gave a lot of errors in hello_base.h and
hello_base.cpp, about signals and slots.

So does this mean that my qtopia library isn't properly linked? I actually
happen to have a lot of Qt stuff in my machine (Ubuntu 9.10 host). Qt
(latest for x86), qtopia 2.2 for x86, qtopia 2.2 for arm, and
Qt-everywhere-4.6.2 for arm. I think that's why it's all getting messed up.

Can you please tell me your environment variables/bash profile i.e.
variable name = value, as related to qtopia (arm)?


BTW, in the mean time I worked with Qt-everywhere-4.6.2 and got it running
on the host for cross-compiling. I get the output (.bin) in the project
folder. But when I run the compiled project in mini2440, I get
"transformation error: driver not found Aborted".
So, can you tell me what variable to set for drivers on the mini2440?

Thanks a lot :)