Errors while compiling on Mac OS X

Bug #361820 reported by Michael Hofmann
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
igotu2gpx
Fix Released
Medium
Michael Hofmann

Bug Description

Compiling on Mac OS X does not work, but it should theoretically.

After a long break at programming, I'm trying to work out how to make use of the work done for the i-gotU. If someone could fill in any gaps I'd appreciate it.... I've not done dev on the Mac before but am familiar with Solaris/UNIX/C.

Mac 10.5.6, Intel iMac, Xcode 3.1.2 tools installed, boost 1.38.0 installed (std ./configure used - resulted in /usr/local install), Qt4.5.0 installed

The install file states:

To compile igotu2gpx, you need:
- qt4
- boost
- boost-program-options
- libusb
- chrpath (optional, makes it possible to run the program without installation)

So I have a compiler, I have qt4 and boost (which seems to include program-options).

- libusb most recent version does not work on Mac so I instead used 0.1.12which installed in /usr/local/lib
- chrpath could not find this but as it's optional this should be okay??

So now what.. I tried qmake in igotu directory (prompt returns with no message) followed by make which returns with make: *** No targets specified and no makefile found. Stop.

I' not sure if Qt Creator can/should be used or if the command line approach should work. I've not made any changes to include/path and wonder this would help and if so how should it be done?

Plenty of questions and I appreciate any feedback/pointers to tutorials.

Revision history for this message
Michael Hofmann (mh21) wrote :

Thanks for your bug report. Because I don't have a mac system, I need your help to get the Mac support in a usable state.

I commit some smallish changes to the build system that should get you a bit further, but you need to checkout the version in bzr with "bzr branch lp:igotu2gpx".

Changed in igotu2gpx:
assignee: nobody → Michael Hofmann (mh21)
importance: Undecided → Medium
milestone: none → 0.3
status: New → Incomplete
Revision history for this message
billy920 (cwscott) wrote : Re: [Bug 361820] Re: Errors while compiling on Mac OS X
Download full text (3.2 KiB)

Hi,

Thanks for looking into this but I wonder if my issues might be more
basic than this...?

How would you suggest actually making this? The docs say qmake/make/
make install - I guess that using the command line approach should
make this simpler so I tried qmake in the project root dir and got the
following:

Silly-iMac:igotu2gpx-0.2 Will$ qmake
Project MESSAGE: ------------------------------------
Project MESSAGE: Required dependencies:
Project MESSAGE: ------------------------------------
Project MESSAGE: Looking for boost-po : no
Project ERROR: Please install the necessary (devel) packages for boost-
po!

So - any idea how/where I should specify the boost rootdir? In my
Solaris days we used the .cshrc to define library paths and other
variables but you may have a better suggestion that will work with
this, hopefully!

Thanks,

Will

On 15 Apr 2009, at 17:38, Michael Hofmann wrote:

> Thanks for your bug report. Because I don't have a mac system, I need
> your help to get the Mac support in a usable state.
>
> I commit some smallish changes to the build system that should get
> you a
> bit further, but you need to checkout the version in bzr with "bzr
> branch lp:igotu2gpx".
>
> ** Changed in: igotu2gpx
> Importance: Undecided => Medium
>
> ** Changed in: igotu2gpx
> Status: New => Incomplete
>
> ** Changed in: igotu2gpx
> Milestone: None => 0.3
>
> ** Changed in: igotu2gpx
> Assignee: (unassigned) => Michael Hofmann (mh21)
>
> --
> Errors while compiling on Mac OS X
> https://bugs.launchpad.net/bugs/361820
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in MobileAction i-gotU USB GPS travel logger Mac/Linux
> support: Incomplete
>
> Bug description:
> Compiling on Mac OS X does not work, but it should theoretically.
>
> After a long break at programming, I'm trying to work out how to
> make use of the work done for the i-gotU. If someone could fill in
> any gaps I'd appreciate it.... I've not done dev on the Mac before
> but am familiar with Solaris/UNIX/C.
>
> Mac 10.5.6, Intel iMac, Xcode 3.1.2 tools installed, boost 1.38.0
> installed (std ./configure used - resulted in /usr/local install),
> Qt4.5.0 installed
>
> The install file states:
>
> To compile igotu2gpx, you need:
> - qt4
> - boost
> - boost-program-options
> - libusb
> - chrpath (optional, makes it possible to run the program without
> installation)
>
> So I have a compiler, I have qt4 and boost (which seems to include
> program-options).
>
> - libusb most recent version does not work on Mac so I instead used
> 0.1.12which installed in /usr/local/lib
> - chrpath could not find this but as it's optional this should be
> okay??
>
> So now what.. I tried qmake in igotu directory (prompt returns with
> no message) followed by make which returns with make: *** No targets
> specified and no makefile found. Stop.
>
> I' not sure if Qt Creator can/should be used or if the command line
> approach should work. I've not made any changes to include/path and
> wonder this would help and if so how should it be done?
>
> Plenty of questions and I appreciate any feedba...

Read more...

Revision history for this message
Michael Hofmann (mh21) wrote :

> Thanks for looking into this but I wonder if my issues might be more
> basic than this...?
No, this is actually going in the right direction :-).

> How would you suggest actually making this? The docs say qmake/make/
> make install - I guess that using the command line approach should
> make this simpler so I tried qmake in the project root dir and got the
> following:
>
> Silly-iMac:igotu2gpx-0.2 Will$ qmake
> Project MESSAGE: ------------------------------------
> Project MESSAGE: Required dependencies:
> Project MESSAGE: ------------------------------------
> Project MESSAGE: Looking for boost-po : no
> Project ERROR: Please install the necessary (devel) packages for boost-
> po!
>
> So - any idea how/where I should specify the boost rootdir?
To change the default search paths that the build system uses, do the
following:
* copy the file localconfig-template.pri to localconfig.pri
* uncomment and change the necessary defines so that they match your
system, e.g. change macx:BOOSTINCLUDEDIR to the boost include directory
(it needs to contain a subdir named boost/program_options). To look what
the build system is doing, look into clebs/. For each of the
dependencies, there is a file with the same name in clebs/*/*.pri.

Michael

Revision history for this message
billy920 (cwscott) wrote :
Download full text (4.3 KiB)

Progress - clear advice appreciated

macx:BOOSTINCLUDEDIR = $${BOOSTROOT}/usr/local/include/boost-1_38 was
added to localconfig.pri resulting in a qmake output as follows:

Silly-iMac:igotu2gpx-0.2 Will$ qmake
Project MESSAGE: ------------------------------------
Project MESSAGE: Required dependencies:
Project MESSAGE: ------------------------------------
Project MESSAGE: Looking for boost-po : yes
Project MESSAGE: Looking for libusb : yes
Project MESSAGE: ------------------------------------
Project MESSAGE: Suggested dependencies:
Project MESSAGE: ------------------------------------
Project MESSAGE: Looking for chrpath : no
Project MESSAGE: ------------------------------------
Project MESSAGE: Additional features:
Project MESSAGE: ------------------------------------
Project MESSAGE: ------------------------------------
WARNING: Ignored (not found) '/Users/Will/.Trash/igotu2gpx-0.2
23-47-44/src/igotu/igotu.xcodeproj'
WARNING: Ignored (not found) '/Users/Will/.Trash/igotu2gpx-0.2
23-47-44/src/igotu2gpx/igotu2gpx.xcodeproj'

I've still not been able to find chrpath and am unsure what to do next
as there's no makefile after te above step. I could send the output
from qmake -d if that would help.

Will

On 15 Apr 2009, at 22:30, Michael Hofmann wrote:

>> Thanks for looking into this but I wonder if my issues might be more
>> basic than this...?
> No, this is actually going in the right direction :-).
>
>> How would you suggest actually making this? The docs say qmake/make/
>> make install - I guess that using the command line approach should
>> make this simpler so I tried qmake in the project root dir and got
>> the
>> following:
>>
>> Silly-iMac:igotu2gpx-0.2 Will$ qmake
>> Project MESSAGE: ------------------------------------
>> Project MESSAGE: Required dependencies:
>> Project MESSAGE: ------------------------------------
>> Project MESSAGE: Looking for boost-po : no
>> Project ERROR: Please install the necessary (devel) packages for
>> boost-
>> po!
>>
>> So - any idea how/where I should specify the boost rootdir?
> To change the default search paths that the build system uses, do the
> following:
> * copy the file localconfig-template.pri to localconfig.pri
> * uncomment and change the necessary defines so that they match your
> system, e.g. change macx:BOOSTINCLUDEDIR to the boost include
> directory
> (it needs to contain a subdir named boost/program_options). To look
> what
> the build system is doing, look into clebs/. For each of the
> dependencies, there is a file with the same name in clebs/*/*.pri.
>
> Michael
>
> --
> Errors while compiling on Mac OS X
> https://bugs.launchpad.net/bugs/361820
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in MobileAction i-gotU USB GPS travel logger Mac/Linux
> support: Incomplete
>
> Bug description:
> Compiling on Mac OS X does not work, but it should theoretically.
>
> After a long break at programming, I'm trying to work out how to
> make use of the work done for the i-gotU. If someone could fill in
> any gaps I'd appreciate it.... I've not done dev on the Mac before
> b...

Read more...

Revision history for this message
Michael Hofmann (mh21) wrote :

Hi Will,

> WARNING: Ignored (not found) '/Users/Will/.Trash/igotu2gpx-0.2
> 23-47-44/src/igotu/igotu.xcodeproj'
> WARNING: Ignored (not found) '/Users/Will/.Trash/igotu2gpx-0.2
> 23-47-44/src/igotu2gpx/igotu2gpx.xcodeproj'
Reading through the qmake documentation, it seems like you need to use
  qmake -spec macx-g++
to generate makefiles. Afterwards a "make" should hopefully work.

Michael

Revision history for this message
billy920 (cwscott) wrote :

That looks better - output as below.....

Silly-iMac:igotu2gpx-0.2 Will$ qmake -spec macx-g++
Project MESSAGE: ------------------------------------
Project MESSAGE: Required dependencies:
Project MESSAGE: ------------------------------------
Project MESSAGE: Looking for boost-po : yes
Project MESSAGE: Looking for libusb : yes
Project MESSAGE: ------------------------------------
Project MESSAGE: Suggested dependencies:
Project MESSAGE: ------------------------------------
Project MESSAGE: Looking for chrpath : no
Project MESSAGE: ------------------------------------
Project MESSAGE: Additional features:
Project MESSAGE: ------------------------------------
Project MESSAGE: ------------------------------------

Silly-iMac:igotu2gpx-0.2 Will$ make
cd src/igotu/ && make -f Makefile
echo !_TAG_FILE_FORMAT 2 dummy > /Users/Will/Code/igotu2gpx-0.2/tags;
echo !_TAG_FILE_SORTED 1 dummy >> /Users/Will/Code/igotu2gpx-0.2/tags;
sed -i 's/ /\t/g' /Users/Will/Code/igotu2gpx-0.2/tags; cd /Users/Will/
Code/igotu2gpx-0.2 && ctags -R --c++-kinds=+p-n --fields=+iaS --extra=
+fq --exclude=.build -f - src | sed 's/igotu:://g;s/\tnamespace:igotu//
g' | LC_ALL=C sort >> tags || cd .
sed: 1: "/Users/Will/Code/igotu2 ...": invalid command code W
ctags: illegal option -- R
usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
compiling libusbconnection.cpp
libusbconnection.cpp: In constructor
‘igotu::LibusbConnection::LibusbConnection(unsigned int, unsigned int)’:
libusbconnection.cpp:97: error: ‘usb_get_driver_np’ was not declared
in this scope
libusbconnection.cpp:102: error: ‘usb_detach_kernel_driver_np’ was not
declared in this scope
make[1]: *** [.build/debug/libusbconnection.o] Error 1
make: *** [sub-src-igotu-make_default] Error 2

On 16 Apr 2009, at 09:15, Michael Hofmann wrote:

> qmake -spec macx-g++

Revision history for this message
Michael Hofmann (mh21) wrote :

> libusbconnection.cpp: In constructor
> ‘igotu::LibusbConnection::LibusbConnection(unsigned int, unsigned int)’:
> libusbconnection.cpp:97: error: ‘usb_get_driver_np’ was not declared
> in this scope
> libusbconnection.cpp:102: error: ‘usb_detach_kernel_driver_np’ was not
> declared in this scope
Ok, these are fixed in bzr head (these calls are only available on
linux). Can you try again?

Michael

Revision history for this message
billy920 (cwscott) wrote :
Download full text (4.1 KiB)

One step closer....

Silly-iMac:igotu2gpx-0.2 Will$ qmake -spec macx-g++
Project MESSAGE: ------------------------------------
Project MESSAGE: Required dependencies:
Project MESSAGE: ------------------------------------
Project MESSAGE: Looking for boost-po : yes
Project MESSAGE: Looking for libusb : yes
Project MESSAGE: ------------------------------------
Project MESSAGE: Suggested dependencies:
Project MESSAGE: ------------------------------------
Project MESSAGE: Looking for chrpath : no
Project MESSAGE: ------------------------------------
Project MESSAGE: Additional features:
Project MESSAGE: ------------------------------------
Project MESSAGE: ------------------------------------

Silly-iMac:igotu2gpx-0.2 Will$ make
cd src/igotu/ && /usr/bin/qmake igotu.pro -spec /usr/local/Qt4.5/
mkspecs/macx-g++ -macx -o Makefile
cd src/igotu/ && make -f Makefile
echo !_TAG_FILE_FORMAT 2 dummy > /Users/Will/Code/igotu2gpx-0.2/tags;
echo !_TAG_FILE_SORTED 1 dummy >> /Users/Will/Code/igotu2gpx-0.2/tags;
sed -i 's/ /\t/g' /Users/Will/Code/igotu2gpx-0.2/tags; cd /Users/Will/
Code/igotu2gpx-0.2 && ctags -R --c++-kinds=+p-n --fields=+iaS --extra=
+fq --exclude=.build -f - src | sed 's/igotu:://g;s/\tnamespace:igotu//
g' | LC_ALL=C sort >> tags || cd .
sed: 1: "/Users/Will/Code/igotu2 ...": invalid command code W
ctags: illegal option -- R
usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
compiling pch.h
compiling pch.h
compiling commands.cpp
compiling dataconnection.cpp
compiling igotucommand.cpp
compiling igotupoints.cpp
compiling optionutils.cpp
compiling verbose.cpp
compiling xmlutils.cpp
compiling libusbconnection.cpp
rm -f libigotu.1.0.0.dylib libigotu.dylib libigotu.1.dylib libigotu.
1.0.dylib
linking ../../bin/debug/libigotu.1.0.0.dylib
ld: unknown option: -rpath-link=/Users/Will/Code/igotu2gpx-0.2/bin/debug
collect2: ld returned 1 exit status
make[1]: *** [../../bin/debug/libigotu.1.0.0.dylib] Error 1
make: *** [sub-src-igotu-make_default] Error 2

On 16 Apr 2009, at 10:35, Michael Hofmann wrote:

>> libusbconnection.cpp: In constructor
>> ‘igotu::LibusbConnection::LibusbConnection(unsigned int, unsigned
>> int)’:
>> libusbconnection.cpp:97: error: ‘usb_get_driver_np’ was not declared
>> in this scope
>> libusbconnection.cpp:102: error: ‘usb_detach_kernel_driver_np’ was
>> not
>> declared in this scope
> Ok, these are fixed in bzr head (these calls are only available on
> linux). Can you try again?
>
> Michael
>
> --
> Errors while compiling on Mac OS X
> https://bugs.launchpad.net/bugs/361820
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in MobileAction i-gotU USB GPS travel logger Mac/Linux
> support: Incomplete
>
> Bug description:
> Compiling on Mac OS X does not work, but it should theoretically.
>
> After a long break at programming, I'm trying to work out how to
> make use of the work done for the i-gotU. If someone could fill in
> any gaps I'd appreciate it.... I've not done dev on the Mac before
> but am familiar with Solaris/UNIX/C.
>
> Mac 10.5.6, Intel iMac, Xcode 3.1.2 tools installed, boost 1.38.0
> installed (std ./configure...

Read more...

Revision history for this message
Michael Hofmann (mh21) wrote :

I played around in the build system, seems like qmake thinks that Mac OS
X is a unix system (which is kind of true :-).

> ld: unknown option: -rpath-link=/Users/Will/Code/igotu2gpx-0.2/bin/debug
So this should be solved, but maybe I did mess up sth. else. Give it a
try.

Michael

Revision history for this message
billy920 (cwscott) wrote :
Download full text (4.3 KiB)

What do you mean, kind of..... ;-)

Some error output at the end of the make relating to program options.
Remember I have boost 1.38.0 installed and have previously assumed
that program options was included. There are certainly files relating
to this in //usr/local/include/boost-1_38/boost/program_options so not
sure why the error is there.

Silly-iMac:igotu2gpx-0.2 Will$ make
cd src/igotu/ && /usr/bin/qmake igotu.pro -spec /usr/local/Qt4.5/
mkspecs/macx-g++ -macx -o Makefile
cd src/igotu/ && make -f Makefile
echo !_TAG_FILE_FORMAT 2 dummy > /Users/Will/Code/igotu2gpx-0.2/tags;
echo !_TAG_FILE_SORTED 1 dummy >> /Users/Will/Code/igotu2gpx-0.2/tags;
sed -i 's/ /\t/g' /Users/Will/Code/igotu2gpx-0.2/tags; cd /Users/Will/
Code/igotu2gpx-0.2 && ctags -R --c++-kinds=+p-n --fields=+iaS --extra=
+fq --exclude=.build -f - src | sed 's/igotu:://g;s/\tnamespace:igotu//
g' | LC_ALL=C sort >> tags || cd .
sed: 1: "/Users/Will/Code/igotu2 ...": invalid command code W
ctags: illegal option -- R
usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
compiling pch.h
compiling pch.h
compiling commands.cpp
compiling dataconnection.cpp
compiling igotucommand.cpp
compiling igotupoints.cpp
compiling optionutils.cpp
compiling verbose.cpp
compiling xmlutils.cpp
compiling libusbconnection.cpp
rm -f libigotu.1.0.0.dylib libigotu.dylib libigotu.1.dylib libigotu.
1.0.dylib
linking ../../bin/debug/libigotu.1.0.0.dylib
ln -s libigotu.1.0.0.dylib libigotu.dylib
ln -s libigotu.1.0.0.dylib libigotu.1.dylib
ln -s libigotu.1.0.0.dylib libigotu.1.0.dylib
rm -f ../../bin/debug/libigotu.1.0.0.dylib
rm -f ../../bin/debug/libigotu.dylib
rm -f ../../bin/debug/libigotu.1.dylib
rm -f ../../bin/debug/libigotu.1.0.dylib
mv -f libigotu.1.0.0.dylib libigotu.dylib libigotu.1.dylib libigotu.
1.0.dylib ../../bin/debug/
cd src/igotu2gpx/ && /usr/bin/qmake igotu2gpx.pro -spec /usr/local/
Qt4.5/mkspecs/macx-g++ -macx -o Makefile
cd src/igotu2gpx/ && make -f Makefile
compiling igotu2gpx.cpp
linking ../../bin/debug/igotu2gpx.app/Contents/MacOS/igotu2gpx
ld: library not found for -lboost_program_options-mt
collect2: ld returned 1 exit status
make[1]: *** [../../bin/debug/igotu2gpx.app/Contents/MacOS/igotu2gpx]
Error 1
make: *** [sub-src-igotu2gpx-make_default] Error 2

Will

On 16 Apr 2009, at 14:14, Michael Hofmann wrote:

> I played around in the build system, seems like qmake thinks that
> Mac OS
> X is a unix system (which is kind of true :-).
>
>> ld: unknown option: -rpath-link=/Users/Will/Code/igotu2gpx-0.2/bin/
>> debug
> So this should be solved, but maybe I did mess up sth. else. Give it a
> try.
>
> Michael
>
> --
> Errors while compiling on Mac OS X
> https://bugs.launchpad.net/bugs/361820
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in MobileAction i-gotU USB GPS travel logger Mac/Linux
> support: Incomplete
>
> Bug description:
> Compiling on Mac OS X does not work, but it should theoretically.
>
> After a long break at programming, I'm trying to work out how to
> make use of the work done for the i-gotU. If someone could fill in
> any gaps I'd appreciate it.... I've not done dev on the Mac before
> but am...

Read more...

Revision history for this message
Michael Hofmann (mh21) wrote :

> linking ../../bin/debug/igotu2gpx.app/Contents/MacOS/igotu2gpx
> ld: library not found for -lboost_program_options-mt
Hmm, the boost program options library consists of headers
(in /usr/local/include/boost...), but also a library.

So let's figure out the name of the library on Mac OS X and where it is.
Can you give me a ls of /usr/local/lib/*boost*? The libraries should be
called sth. like libboost_program_options-....dylib.

Michael

Revision history for this message
billy920 (cwscott) wrote :
Download full text (6.4 KiB)

This one then:

-rw-r--r-- 1 root wheel 2472932 14 Apr 18:47
libboost_program_options-xgcc40-mt-1_38.a
-rwxr-xr-x 1 root wheel 368480 14 Apr 18:36
libboost_program_options-xgcc40-mt-1_38.dylib
lrwxr-xr-x 1 root wheel 41 14 Apr 18:50
libboost_program_options-xgcc40-mt.a -> libboost_program_options-
xgcc40-mt-1_38.a
lrwxr-xr-x 1 root wheel 45 14 Apr 18:42
libboost_program_options-xgcc40-mt.dylib -> libboost_program_options-
xgcc40-mt-1_38.dylib

Silly-iMac:lib Will$ pwd
/usr/local/lib
Silly-iMac:lib Will$ ls
libboost_date_time-xgcc40-mt-1_38.a libboost_math_tr1l-xgcc40-
mt.a libboost_unit_test_framework-xgcc40-mt.a
libboost_date_time-xgcc40-mt-1_38.dylib libboost_math_tr1l-xgcc40-
mt.dylib libboost_unit_test_framework-xgcc40-mt.dylib
libboost_date_time-xgcc40-mt.a libboost_prg_exec_monitor-xgcc40-
mt-1_38.a libboost_wave-xgcc40-mt-1_38.a
libboost_date_time-xgcc40-mt.dylib libboost_prg_exec_monitor-xgcc40-
mt-1_38.dylib libboost_wave-xgcc40-mt-1_38.dylib
libboost_filesystem-xgcc40-mt-1_38.a libboost_prg_exec_monitor-
xgcc40-mt.a libboost_wave-xgcc40-mt.a
libboost_filesystem-xgcc40-mt-1_38.dylib libboost_prg_exec_monitor-
xgcc40-mt.dylib libboost_wave-xgcc40-mt.dylib
libboost_filesystem-xgcc40-mt.a libboost_program_options-xgcc40-
mt-1_38.a libboost_wserialization-xgcc40-mt-1_38.a
libboost_filesystem-xgcc40-mt.dylib libboost_program_options-xgcc40-
mt-1_38.dylib libboost_wserialization-xgcc40-mt-1_38.dylib
libboost_graph-xgcc40-mt-1_38.a libboost_program_options-xgcc40-
mt.a libboost_wserialization-xgcc40-mt.a
libboost_graph-xgcc40-mt-1_38.dylib libboost_program_options-xgcc40-
mt.dylib libboost_wserialization-xgcc40-mt.dylib
libboost_graph-xgcc40-mt.a libboost_python-xgcc40-mt-1_38.a
libfuse.0.dylib
libboost_graph-xgcc40-mt.dylib libboost_python-xgcc40-
mt-1_38.dylib libfuse.2.7.3.dylib
libboost_iostreams-xgcc40-mt-1_38.a libboost_python-xgcc40-mt.a
libfuse.2.dylib
libboost_iostreams-xgcc40-mt-1_38.dylib libboost_python-xgcc40-
mt.dylib libfuse.dylib
libboost_iostreams-xgcc40-mt.a libboost_regex-xgcc40-mt-1_38.a
libfuse.la
libboost_iostreams-xgcc40-mt.dylib libboost_regex-xgcc40-
mt-1_38.dylib libfuse_ino64.2.7.3.dylib
libboost_math_c99-xgcc40-mt-1_38.a libboost_regex-xgcc40-mt.a
libfuse_ino64.2.dylib
libboost_math_c99-xgcc40-mt-1_38.dylib libboost_regex-xgcc40-
mt.dylib libfuse_ino64.dylib
libboost_math_c99-xgcc40-mt.a libboost_serialization-xgcc40-
mt-1_38.a libfuse_ino64.la
libboost_math_c99-xgcc40-mt.dylib libboost_serialization-xgcc40-
mt-1_38.dylib libprl_sdk.3.0.0.dylib
libboost_math_c99f-xgcc40-mt-1_38.a libboost_serialization-xgcc40-
mt.a libprl_sdk.3.0.dylib
libboost_math_c99f-xgcc40-mt-1_38.dylib libboost_serialization-
xgcc40-mt.dylib libprl_sdk.3.dylib
libboost_math_c99f-xgcc40-mt.a libboost_signals-xgcc40-mt-1_38.a
libprl_sdk.dylib
libboost_math_c99f-xgcc40-mt.dylib libboost_signals-xgcc40-
mt-1_38.dylib libusb-0.1.4.4.4.dylib
libboost_math_c99l-xgcc40-mt-1_38.a libboost_signals-xgcc40-mt.a
libusb-0.1.4.4.5.dylib
libboost_math_c99l-xgcc40-mt-1_38.dylib libbo...

Read more...

Revision history for this message
Michael Hofmann (mh21) wrote :

> libboost_program_options-xgcc40-mt.dylib
I changed the build system to be more flexible on Mac OS X, so you can define

macx:BOOSTROOT = /usr/local
macx:BOOSTINCLUDEDIR = $${BOOSTROOT}/include/boost-1_38
macx:BOOSTLIBDIR = $${BOOSTROOT}/lib
macx:BOOSTPOLIB = boost_program_options-xgcc40-mt

and it will hopefully use these. Next try :-).

Revision history for this message
billy920 (cwscott) wrote :
Download full text (6.8 KiB)

Mmm, that worked BUT I think there's still an issue:

The make:

Silly-iMac:igotu2gpx-0.2 Will$ make
cd src/igotu/ && /usr/bin/qmake igotu.pro -spec /usr/local/Qt4.5/
mkspecs/macx-g++ -macx -o Makefile
cd src/igotu/ && make -f Makefile
echo !_TAG_FILE_FORMAT 2 dummy > /Users/Will/Code/igotu2gpx-0.2/tags;
echo !_TAG_FILE_SORTED 1 dummy >> /Users/Will/Code/igotu2gpx-0.2/tags;
sed -i 's/ /\t/g' /Users/Will/Code/igotu2gpx-0.2/tags; cd /Users/Will/
Code/igotu2gpx-0.2 && ctags -R --c++-kinds=+p-n --fields=+iaS --extra=
+fq --exclude=.build -f - src | sed 's/igotu:://g;s/\tnamespace:igotu//
g' | LC_ALL=C sort >> tags || cd .
sed: 1: "/Users/Will/Code/igotu2 ...": invalid command code W
ctags: illegal option -- R
usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
compiling pch.h
compiling pch.h
compiling commands.cpp
compiling dataconnection.cpp
compiling igotucommand.cpp
compiling igotupoints.cpp
compiling optionutils.cpp
compiling verbose.cpp
compiling xmlutils.cpp
compiling libusbconnection.cpp
rm -f libigotu.1.0.0.dylib libigotu.dylib libigotu.1.dylib libigotu.
1.0.dylib
linking ../../bin/debug/libigotu.1.0.0.dylib
ln -s libigotu.1.0.0.dylib libigotu.dylib
ln -s libigotu.1.0.0.dylib libigotu.1.dylib
ln -s libigotu.1.0.0.dylib libigotu.1.0.dylib
rm -f ../../bin/debug/libigotu.1.0.0.dylib
rm -f ../../bin/debug/libigotu.dylib
rm -f ../../bin/debug/libigotu.1.dylib
rm -f ../../bin/debug/libigotu.1.0.dylib
mv -f libigotu.1.0.0.dylib libigotu.dylib libigotu.1.dylib libigotu.
1.0.dylib ../../bin/debug/
cd src/igotu2gpx/ && /usr/bin/qmake igotu2gpx.pro -spec /usr/local/
Qt4.5/mkspecs/macx-g++ -macx -o Makefile
cd src/igotu2gpx/ && make -f Makefile
compiling igotu2gpx.cpp
linking ../../bin/debug/igotu2gpx.app/Contents/MacOS/igotu2gpx

The sudo make install:

Silly-iMac:igotu2gpx-0.2 Will$ sudo make install
Password:
cd src/igotu/ && make -f Makefile install
echo !_TAG_FILE_FORMAT 2 dummy > /Users/Will/Code/igotu2gpx-0.2/tags;
echo !_TAG_FILE_SORTED 1 dummy >> /Users/Will/Code/igotu2gpx-0.2/tags;
sed -i 's/ /\t/g' /Users/Will/Code/igotu2gpx-0.2/tags; cd /Users/Will/
Code/igotu2gpx-0.2 && ctags -R --c++-kinds=+p-n --fields=+iaS --extra=
+fq --exclude=.build -f - src | sed 's/igotu:://g;s/\tnamespace:igotu//
g' | LC_ALL=C sort >> tags || cd .
sed: 1: "/Users/Will/Code/igotu2 ...": invalid command code W
ctags: illegal option -- R
usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
cp -f "../../bin/debug/libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.
1.0.0.dylib"
ln -sf "libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.dylib"
ln -sf "libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.1.dylib"
ln -sf "libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.1.0.dylib"
cd src/igotu2gpx/ && make -f Makefile install
rm -f -r "/usr/local/bin/igotu2gpx.app"
cp -f -R "../../bin/debug/igotu2gpx.app" "/usr/local/bin/igotu2gpx.app"
cp -f /Users/Will/Code/igotu2gpx-0.2/src/igotu2gpx/igotu2gpx.1 /usr/
local/share/man/man1/
cp -f /Users/Will/Code/igotu2gpx-0.2/LICENSE /usr/local/share/doc/
igotu2gpx/
cp -f /Users/Will/Code/igotu2gpx-0.2/HACKING /usr/local/share/doc/
igotu2gpx/

This gives me a igotu2gpx.app folder/application in the /usr/local/bin
directory which I ca...

Read more...

Revision history for this message
Michael Hofmann (mh21) wrote :

> linking ../../bin/debug/igotu2gpx.app/Contents/MacOS/igotu2gpx
Ok, I found a qmake configuration setting that promises a normal
executable. Wanna try it?

Revision history for this message
billy920 (cwscott) wrote :
Download full text (3.7 KiB)

Certainly - it worked a treat, I get the impression you may have done
this kind of thing before!

Unfortunately I have no idea if this will talk to my (replaced) igotu
when it arrives but at least you have done a great job in getting this
set up for Mac users who are desperately in need of such a tool. Once
there's a new release with source distribution I'll re-test and will
be happy to send over compiled versions - looks like the bin/debug
folder would do the job.

So - is there anyone out there with a Mac and working igotu who would
like to give this a go??

Silly-iMac:igotu2gpx-0.2 Will$ sudo make install
cd src/igotu/ && make -f Makefile install
echo !_TAG_FILE_FORMAT 2 dummy > /Users/Will/Code/igotu2gpx-0.2/tags;
echo !_TAG_FILE_SORTED 1 dummy >> /Users/Will/Code/igotu2gpx-0.2/tags;
sed -i 's/ /\t/g' /Users/Will/Code/igotu2gpx-0.2/tags; cd /Users/Will/
Code/igotu2gpx-0.2 && ctags -R --c++-kinds=+p-n --fields=+iaS --extra=
+fq --exclude=.build -f - src | sed 's/igotu:://g;s/\tnamespace:igotu//
g' | LC_ALL=C sort >> tags || cd .
sed: 1: "/Users/Will/Code/igotu2 ...": invalid command code W
ctags: illegal option -- R
usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
cp -f "../../bin/debug/libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.
1.0.0.dylib"
ln -sf "libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.dylib"
ln -sf "libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.1.dylib"
ln -sf "libigotu.1.0.0.dylib" "/usr/local/lib/libigotu.1.0.dylib"
cd src/igotu2gpx/ && make -f Makefile install
cp -f "../../bin/debug/igotu2gpx" "/usr/local/bin/igotu2gpx"
cp -f /Users/Will/Code/igotu2gpx-0.2/src/igotu2gpx/igotu2gpx.1 /usr/
local/share/man/man1/
cp -f /Users/Will/Code/igotu2gpx-0.2/LICENSE /usr/local/share/doc/
igotu2gpx/
cp -f /Users/Will/Code/igotu2gpx-0.2/HACKING /usr/local/share/doc/
igotu2gpx/

On 16 Apr 2009, at 17:14, Michael Hofmann wrote:

>> linking ../../bin/debug/igotu2gpx.app/Contents/MacOS/igotu2gpx
> Ok, I found a qmake configuration setting that promises a normal
> executable. Wanna try it?
>
> --
> Errors while compiling on Mac OS X
> https://bugs.launchpad.net/bugs/361820
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in MobileAction i-gotU USB GPS travel logger Mac/Linux
> support: Incomplete
>
> Bug description:
> Compiling on Mac OS X does not work, but it should theoretically.
>
> After a long break at programming, I'm trying to work out how to
> make use of the work done for the i-gotU. If someone could fill in
> any gaps I'd appreciate it.... I've not done dev on the Mac before
> but am familiar with Solaris/UNIX/C.
>
> Mac 10.5.6, Intel iMac, Xcode 3.1.2 tools installed, boost 1.38.0
> installed (std ./configure used - resulted in /usr/local install),
> Qt4.5.0 installed
>
> The install file states:
>
> To compile igotu2gpx, you need:
> - qt4
> - boost
> - boost-program-options
> - libusb
> - chrpath (optional, makes it possible to run the program without
> installation)
>
> So I have a compiler, I have qt4 and boost (which seems to include
> program-options).
>
> - libusb most recent version does not work on Mac so I instead used
> 0.1....

Read more...

Revision history for this message
Michael Hofmann (mh21) wrote :

Marked as Fix Committed because it at least compiles now. How to create a distributable package with all the libraries in it (Qt and Boost-Po) is another question :-).

Changed in igotu2gpx:
status: Incomplete → Fix Committed
Revision history for this message
Gustavo Funke (gustavofunke-ig) wrote :

Hello billy920!
Did you test it with I-gotU device? Did this code work fine?
I tryied to use in my mac, but I dont know how do it. Can you do a small tutorial about it? :-(
Thanks in advance.

Revision history for this message
billy920 (cwscott) wrote :
Download full text (3.6 KiB)

Hi - it would be great to see someone else try this whilst I'm waiting
for my replacement...... good luck:

To compile igotu2gpx on a modern Mac, you need something along the
lines of...

- xcode - http://developer.apple.com/technology/Xcode.html (I used
312_2621)
- qt4 - http://www.qtsoftware.com/downloads/sdk-mac-os-cpp (currently
at Rel 4.5.1)
- boost - http://www.boost.org/ (currently at Rel 1.38.0)
- libusb - http://libusb.sourceforge.net/ (I used v 0.1.12 which is
not the most recent but try this version)
- pkg-config - http://pkgconfig.freedesktop.org/releases/ (I used Rel
0.23)

The following process was followed on a fairly fresh install (MBA 1st
gen) of 10.5.6 using an admin account:

xcode - mount disk image and run installer, std location and options
qt4 - mount image and run installer, std location and options
boost - extract files into directory, using terminal in that directory
do ./configure followed by make then finally 'sudo make install'
libusb - extract, terminal ./configure - make - sudo make install
pkg-config - extract, terminal for ./configure - make and sudo make
install

If you are not familiar with issuing make etc type commands then try
this:

Open the Terminal
Type cd followed by space
 From the finder, drag the directory that you have extracted (eg
igotu2gpx-0.X) into the Terminal window
Hit return and this will place you in that directory
Type ./configure and a bunch of text will scroll up
Type make (if this does something you should be okay...)
Type sudo make install to get super user rights and copy the files
that you have 'made' into the /use/local file structure.

Finally follow instructions in INSTALL file to create and test your
own igotU

Will

On 24 Apr 2009, at 15:43, Gustavo Funke wrote:

> Hello billy920!
> Did you test it with I-gotU device? Did this code work fine?
> I tryied to use in my mac, but I dont know how do it. Can you do a
> small tutorial about it? :-(
> Thanks in advance.
>
> --
> Errors while compiling on Mac OS X
> https://bugs.launchpad.net/bugs/361820
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in MobileAction i-gotU USB GPS travel logger Mac/Linux
> support: Fix Committed
>
> Bug description:
> Compiling on Mac OS X does not work, but it should theoretically.
>
> After a long break at programming, I'm trying to work out how to
> make use of the work done for the i-gotU. If someone could fill in
> any gaps I'd appreciate it.... I've not done dev on the Mac before
> but am familiar with Solaris/UNIX/C.
>
> Mac 10.5.6, Intel iMac, Xcode 3.1.2 tools installed, boost 1.38.0
> installed (std ./configure used - resulted in /usr/local install),
> Qt4.5.0 installed
>
> The install file states:
>
> To compile igotu2gpx, you need:
> - qt4
> - boost
> - boost-program-options
> - libusb
> - chrpath (optional, makes it possible to run the program without
> installation)
>
> So I have a compiler, I have qt4 and boost (which seems to include
> program-options).
>
> - libusb most recent version does not work on Mac so I instead used
> 0.1.12which installed in /usr/local/lib
> - chrpath could not fi...

Read more...

Revision history for this message
Gustavo Funke (gustavofunke-ig) wrote :

Hello Billy920!
Thank you about this very good tutorial.
I will try to do it soon (Because I am in vacations now).
I will do some report after this.
Thank you again. :-)

Michael Hofmann (mh21)
Changed in igotu2gpx:
status: Fix Committed → Fix Released
milestone: 0.3 → none
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.