Reply
Thread Tools
too's Avatar
Posts: 122 | Thanked: 135 times | Joined on Dec 2009 @ Helsinki
#271
Originally Posted by JapieB View Post
When I follow the instructions on http://wiki.maemo.org/MADDE/Qt_example I get an error when running make:


Code:
MADDE-0.6.72 ~
jbraam $ mad pscreate -l
TEMPLATE NAME    TYPE     DESCRIPTION
empty            prog     Empty project
lib_simple       lib      Simple example for C/C++ libraries
qt_simple        qtprog   Simple example for QT programs
simple           prog     Simple example for C/C++ programs

MADDE-0.6.72 ~
jbraam $ mad pscreate -t qt_simple qthello
Skeleton qthello, type=qtprog created

MADDE-0.6.72 ~
jbraam $ cd qthello

MADDE-0.6.72 ~/qthello
jbraam $ mad qmake

MADDE-0.6.72 ~/qthello
jbraam $ mad make
make: *** No rule to make target `../../../0.6.72/sysroots/fremantle-arm-sysroot
-10.2010.19-1-slim/usr/share/qt4/mkspecs/default/qmake.conf', needed by `Makefil
e'.  Stop.

MADDE-0.6.72 ~/qthello
jbraam $
What can I do to fix this?

Jaap
Interesting problem; just downloaded and installed on home
windows 7 machine and did the same steps and it worked
(no surprise as our automated tests pass this)

So there must be something different in your environment..

Let's see... please try the following commands on madde terminal:

Code:
$ cd
$ pwd -W
$ cd /
$ pwd -W
and report output
 

The Following User Says Thank You to too For This Useful Post:
JapieB's Avatar
Posts: 59 | Thanked: 42 times | Joined on Nov 2009 @ Wageningen (NL)
#272
Originally Posted by too View Post
Interesting problem; just downloaded and installed on home
windows 7 machine and did the same steps and it worked
(no surprise as our automated tests pass this)

So there must be something different in your environment..

Let's see... please try the following commands on madde terminal:

Code:
$ cd
$ pwd -W
$ cd /
$ pwd -W
and report output

Code:
MADDE-0.6.72 ~/qthello
jbraam $ cd

MADDE-0.6.72 ~
jbraam $ pwd -W
D:/MADDE/home/jbraam

MADDE-0.6.72 ~
jbraam $ cd /

MADDE-0.6.72 /
jbraam $ pwd -W
D:/MADDE/0.6.72

MADDE-0.6.72 /
jbraam $
 
too's Avatar
Posts: 122 | Thanked: 135 times | Joined on Dec 2009 @ Helsinki
#273
I created basically identical paths myself and it still works (which is good
as the bug would have been severe...)

now cd back to 'qthello' -directory. then try the following commands:

Code:
ls ..
ls ../..
ls ../../..
ls ../../../0.6.72/
ls ../../../0.6.72/sysroots/
...
ls ../../../0.6.72/sysroots/fremantle-arm-sysroot-10.2010.19-1-slim/usr/share/qt4/mkspecs/default/qmake.conf'
and show the output of last successful command.
 

The Following User Says Thank You to too For This Useful Post:
JapieB's Avatar
Posts: 59 | Thanked: 42 times | Joined on Nov 2009 @ Wageningen (NL)
#274
Originally Posted by too View Post
I created basically identical paths myself and it still works (which is good
as the bug would have been severe...)

now cd back to 'qthello' -directory. then try the following commands:

Code:
ls ..
ls ../..
ls ../../..
ls ../../../0.6.72/
ls ../../../0.6.72/sysroots/
...
ls ../../../0.6.72/sysroots/fremantle-arm-sysroot-10.2010.19-1-slim/usr/share/qt4/mkspecs/default/qmake.conf'
and show the output of last successful command.
Code:
MADDE-0.6.72 ~/qthello
jbraam $ ls ..
qthello  qtprog-build

MADDE-0.6.72 ~/qthello
jbraam $ ls ../..
jbraam

MADDE-0.6.72 ~/qthello
jbraam $ ls ../../..
MADDE.url  doc   legal  madbin     maddedoc.ico     moveusrdata.sh  perllocal.pod       run       share     templates   uninst.exe  wbin
bin        docs  lib    madde.bat  madlib           msys.bat        postinstall.done    runtimes  sysroots  toolchains  usbdriver
cache      etc   m.ico  madde.ico  moveusrdata.bat  msys.ico        rminstallation.bat  sbin      targets   tools       var

MADDE-0.6.72 ~/qthello
jbraam $ ls ../../../0.6.72/
ls: ../../../0.6.72/: No such file or directory

MADDE-0.6.72 ~/qthello
jbraam $
Looks like ../../.. maps to ../../../0.6.72/

After more investigations:

When I replace '../../../0.6.72/sysroots' by '/sysroots' in the makefile generated by qmake the project builds!

Any idea where the ../../../0.6.72 used by 'mad qmake' is coming from?

Last edited by JapieB; 2010-05-28 at 20:32.
 
too's Avatar
Posts: 122 | Thanked: 135 times | Joined on Dec 2009 @ Helsinki
#275
I just realized something... nasty one...

I'm not close to any windows machine now so I cannot test.

To get something done, in MADDE terminal, do first:

cd /d/temp

(and create stuff there)... any other directory works also, provided
there is no whitespaces in it's path.

EDIT: yes, I have idea. there is /home remapping in /etc/fstab
(in MSYS context) which breaks things. And we did not realise
the problem this particular case brings up.

Last edited by too; 2010-05-29 at 07:51.
 

The Following User Says Thank You to too For This Useful Post:
too's Avatar
Posts: 122 | Thanked: 135 times | Joined on Dec 2009 @ Helsinki
#276
JapieB (and anyone else having the same problem)

open MADDE terminal and enter:

Code:
echo > /etc/fstab
This removes the /home -mapping and makes things work.

Notice that /home moves one deeper in directory hierarchy,

from <MADDE>/home to <MADDE>/0.6.72/home

where <MADDE>/0.6.72 equals '/' in MSYS context.

new home directory is created when new MADDE terminal
is opened
 

The Following 2 Users Say Thank You to too For This Useful Post:
JapieB's Avatar
Posts: 59 | Thanked: 42 times | Joined on Nov 2009 @ Wageningen (NL)
#277
Originally Posted by too View Post
Code:
echo > /etc/fstab
Fixed! the example can be executed fully now!

Thanx,

Jaap
 
Posts: 46 | Thanked: 392 times | Joined on Apr 2010 @ Stanford University
#278
I just upgraded MADDE to the latest version, and the MADDE terminal now opens to my Windows user directory: C:\Users\talvala, instead of under MADDE:

Code:
MADDE-0.6.72 ~
talvala $ cd

MADDE-0.6.72 ~
talvala $ pwd
/c/Users/talvala
And trying to build the qthello example results in the same problem as people have been seeing, even after the 'echo > /etc/fstab' fix:

Code:
MADDE-0.6.72 ~/Repositories/tmp/qthello
talvala $ mad qmake

MADDE-0.6.72 ~/Repositories/tmp/qthello
talvala $ mad make
make: *** No rule to make target `../../../Users/talvala/Repositories/tmp/qthello/qtprog.pro', needed by `../../../Users/talvala/Repositories/tmp/qthello/Makefile'.  Stop.
Any idea what broke in the installation? I've tried uninstalling MADDE completely and reinstalling, with no change in the result. This is Windows 7 x64.
 
Posts: 726 | Thanked: 345 times | Joined on Apr 2010 @ Sweden
#279
If you read what make tells you, No rule to make target, this means that there is a dependency that can not be satisfied with either rules in the makefile or the built in rules.

Find the qtprog.pro file and place it in the build tree at a location where it matches the rule in the makefile.
 
Posts: 46 | Thanked: 392 times | Joined on Apr 2010 @ Stanford University
#280
Originally Posted by Joorin View Post
If you read what make tells you, No rule to make target, this means that there is a dependency that can not be satisfied with either rules in the makefile or the built in rules.

Find the qtprog.pro file and place it in the build tree at a location where it matches the rule in the makefile.
The .pro file is in the same directory as the Makefile, and since qmake generated the Makefile from the .pro file, it should get the path right on its own.

Essentially, it's prepending a huge roundabout directory path in front of files inside the project, completely unneccessarily. If I manually remove the lengthy ../../../Users/talvala/Repositories/tmp/qthello/ section from all paths in the Makefile, it works fine. But that gets tedious very quickly, and qmake shouldn't be doing such a thing in any case - why doesn't it just encode the local relative paths, instead of what looks like an attempt to round-trip through 5 layers of directories?
 
Reply

Tags
madde

Thread Tools

 
Forum Jump


All times are GMT. The time now is 04:37.