Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] gtkmm in buildroot toolchain
@ 2012-01-27  8:56 Willy
  2012-01-27 10:19 ` Thomas Petazzoni
  0 siblings, 1 reply; 7+ messages in thread
From: Willy @ 2012-01-27  8:56 UTC (permalink / raw)
  To: buildroot

Hi, 
I've some program written in c++ and gtkmm. 

Which is the better way to compile them for my embedded system between:

 1. Add (somehow) libgtkmm (and other needed libraries) in buildroot toolchain 
 2. Rewrite entirely my programs with gtk+ (and use always it in future)
 3. Use another graphic library and rewrite all

PS: I need more documentation for buildroot, exist some good book or forum for
rookie users?

Thanks,
Willy

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] gtkmm in buildroot toolchain
  2012-01-27  8:56 [Buildroot] gtkmm in buildroot toolchain Willy
@ 2012-01-27 10:19 ` Thomas Petazzoni
  2012-01-27 12:49   ` Michael S. Zick
  2012-01-27 14:11   ` Willy
  0 siblings, 2 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2012-01-27 10:19 UTC (permalink / raw)
  To: buildroot

Hello,

Le Fri, 27 Jan 2012 08:56:57 +0000 (UTC),
Willy <willy@willygroup.org> a ?crit :

> I've some program written in c++ and gtkmm. 
> 
> Which is the better way to compile them for my embedded system
> between:
> 
>  1. Add (somehow) libgtkmm (and other needed libraries) in buildroot
> toolchain 2. Rewrite entirely my programs with gtk+ (and use always
> it in future) 3. Use another graphic library and rewrite all

All options are possible of course, but option 1) is the one that will
allow you to re-use your software as-is. We already have gtk+ support
in Buildroot, and I don't think that gtkmm has many more dependencies
outside of gtk+, so it should be relatively easy to integrate into
Buildroot.

> PS: I need more documentation for buildroot, exist some good book or
> forum for rookie users?

There is some documentation in the Buildroot sources, run 'make manual'
to generate the documentation.

You can also read the documentation online at
http://buildroot.org/downloads/buildroot.html.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] gtkmm in buildroot toolchain
  2012-01-27 10:19 ` Thomas Petazzoni
@ 2012-01-27 12:49   ` Michael S. Zick
  2012-01-27 14:11   ` Willy
  1 sibling, 0 replies; 7+ messages in thread
From: Michael S. Zick @ 2012-01-27 12:49 UTC (permalink / raw)
  To: buildroot

On Fri January 27 2012, Thomas Petazzoni wrote:
> > PS: I need more documentation for buildroot, exist some good book or
> > forum for rookie users?
> 
> There is some documentation in the Buildroot sources, run 'make manual'
> to generate the documentation.
> 
> You can also read the documentation online at
> http://buildroot.org/downloads/buildroot.html.
> 

And if you find a conflict in the directions, 
use that shown by your own 'make manual' command.
 
The doc updates get applied to those files before
they show up as changes in the web site.

Mike

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] gtkmm in buildroot toolchain
  2012-01-27 10:19 ` Thomas Petazzoni
  2012-01-27 12:49   ` Michael S. Zick
@ 2012-01-27 14:11   ` Willy
  2012-01-27 14:27     ` Michael S. Zick
  1 sibling, 1 reply; 7+ messages in thread
From: Willy @ 2012-01-27 14:11 UTC (permalink / raw)
  To: buildroot

Thomas Petazzoni <thomas.petazzoni@...> writes:

> All options are possible of course, but option 1) is the one that will
> allow you to re-use your software as-is. We already have gtk+ support
> in Buildroot, and I don't think that gtkmm has many more dependencies
> outside of gtk+, so it should be relatively easy to integrate into
> Buildroot.

I've added gtkmm with the following .mk file (with no errors):
#####################################################
LIBGTKMM_VERSION = 2.24.0
LIBGTKMM_SOURCE = glibmm-$(LIBGTKMM_VERSION).tar.bz2
LIBGTKMM_INSTALL_STAGING = YES
LIBGTKMM_CONF_OPT = --enable-shared
LIBGTKMM_DEPENDENCIES = libglib2 host-pkg-config

$(eval $(call AUTOTARGETS))
#####################################################

the when I try to compile a gtkmm helloworld example I get this error:

#####################################################
>>> helloworldgtkmm 1.0 Building
/usr/bin/make -j4
CXX=/buildroot_folder/output/host/
    usr/bin/i586-unknown-linux-uclibc-g++
LD=/buildroot_folder/output/host/usr/bin/
    i586-unknown-linux-uclibc-ld -C
/buildroot_folder/output/build/helloworldgtkmm-1.0 all
make[1]: ingresso nella directory
"/buildroot_folder/output/build/helloworldgtkmm-1.0"
/buildroot_folder/output/host/usr/bin/i586-unknown-linux-uclibc-g++ 
    helloworld.o
main.o -o helloworldgtkmm `pkg-config gtkmm-2.4 --cflags --libs`
/buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
    /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
cannot find -lgtkmm-2.4
/buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
    /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
cannot find -latkmm-1.6
/buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
    /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
cannot find -lgdkmm-2.4
/buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
    /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
cannot find -lpangomm-1.4
/buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
    /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
cannot find -lcairomm-1.0
/buildroot_folder/output/host/usr/i586-unknown-linux-uclibc/
    sysroot/usr/lib/libglib-2.0.so:
warning: the use of OBSOLESCENT `utime' is discouraged, use `utimes'
collect2: ld returned 1 exit status
make[1]: *** [helloworldgtkmm] Errore 1
#####################################################

Perhaps do I install those *mm library manually one by one? 



> There is some documentation in the Buildroot sources, run 'make manual'
> to generate the documentation.

Thanks,
Willy

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] gtkmm in buildroot toolchain
  2012-01-27 14:11   ` Willy
@ 2012-01-27 14:27     ` Michael S. Zick
  2012-01-27 14:38       ` Willy
  0 siblings, 1 reply; 7+ messages in thread
From: Michael S. Zick @ 2012-01-27 14:27 UTC (permalink / raw)
  To: buildroot

On Fri January 27 2012, Willy wrote:
> Thomas Petazzoni <thomas.petazzoni@...> writes:
> 
> > All options are possible of course, but option 1) is the one that will
> > allow you to re-use your software as-is. We already have gtk+ support
> > in Buildroot, and I don't think that gtkmm has many more dependencies
> > outside of gtk+, so it should be relatively easy to integrate into
> > Buildroot.
> 
> I've added gtkmm with the following .mk file (with no errors):
> #####################################################
> LIBGTKMM_VERSION = 2.24.0
> LIBGTKMM_SOURCE = glibmm-$(LIBGTKMM_VERSION).tar.bz2
> LIBGTKMM_INSTALL_STAGING = YES
> LIBGTKMM_CONF_OPT = --enable-shared
> LIBGTKMM_DEPENDENCIES = libglib2 host-pkg-config
> 
> $(eval $(call AUTOTARGETS))
> #####################################################
> 
> the when I try to compile a gtkmm helloworld example I get this error:
> 
> #####################################################
> >>> helloworldgtkmm 1.0 Building
> /usr/bin/make -j4
> CXX=/buildroot_folder/output/host/
>     usr/bin/i586-unknown-linux-uclibc-g++
> LD=/buildroot_folder/output/host/usr/bin/
>     i586-unknown-linux-uclibc-ld -C
> /buildroot_folder/output/build/helloworldgtkmm-1.0 all
> make[1]: ingresso nella directory
> "/buildroot_folder/output/build/helloworldgtkmm-1.0"
> /buildroot_folder/output/host/usr/bin/i586-unknown-linux-uclibc-g++ 
>     helloworld.o
> main.o -o helloworldgtkmm `pkg-config gtkmm-2.4 --cflags --libs`
> /buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
>     /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
> cannot find -lgtkmm-2.4
> /buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
>     /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
> cannot find -latkmm-1.6
> /buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
>     /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
> cannot find -lgdkmm-2.4
> /buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
>     /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
> cannot find -lpangomm-1.4
> /buildroot_folder/output/host/usr/lib/gcc/i586-unknown-linux-uclibc
>     /4.3.6/../../../../i586-unknown-linux-uclibc/bin/ld:
> cannot find -lcairomm-1.0
> /buildroot_folder/output/host/usr/i586-unknown-linux-uclibc/
>     sysroot/usr/lib/libglib-2.0.so:
> warning: the use of OBSOLESCENT `utime' is discouraged, use `utimes'
> collect2: ld returned 1 exit status
> make[1]: *** [helloworldgtkmm] Errore 1
> #####################################################
> 
> Perhaps do I install those *mm library manually one by one? 
>

That is one choice.

Might be worth the effort of writing another makefile for each,
setting your dependencies in the gtkmm makefile to depend on them,
then let Buildroot build the entire set.

Mike 
> 
> 
> > There is some documentation in the Buildroot sources, run 'make manual'
> > to generate the documentation.
> 
> Thanks,
> Willy
> 
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] gtkmm in buildroot toolchain
  2012-01-27 14:27     ` Michael S. Zick
@ 2012-01-27 14:38       ` Willy
  2012-01-27 15:14         ` Thomas Petazzoni
  0 siblings, 1 reply; 7+ messages in thread
From: Willy @ 2012-01-27 14:38 UTC (permalink / raw)
  To: buildroot

Michael S. Zick <minimod@...> writes:

> > Perhaps do I install those *mm library manually one by one? 
> >
> 
> That is one choice.
> 
> Might be worth the effort of writing another makefile for each,
> setting your dependencies in the gtkmm makefile to depend on them,
> then let Buildroot build the entire set.

That's too much complicated for me :(

Maybe this time I will install the libraries one by one, then when I will be
more confident with the use of Makefiles I will try the other way.

Thanks a lot,
Willy

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] gtkmm in buildroot toolchain
  2012-01-27 14:38       ` Willy
@ 2012-01-27 15:14         ` Thomas Petazzoni
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2012-01-27 15:14 UTC (permalink / raw)
  To: buildroot

Le Fri, 27 Jan 2012 14:38:23 +0000 (UTC),
Willy <willy@willygroup.org> a ?crit :

> > Might be worth the effort of writing another makefile for each,
> > setting your dependencies in the gtkmm makefile to depend on them,
> > then let Buildroot build the entire set.
> 
> That's too much complicated for me :(

I don't think it's that complicated. You simply need to create one
simple .mk file as you did for glibmm, for each of gtkmm, atkmm,
pangomm and cairomm. That should be sufficient.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-01-27 15:14 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-27  8:56 [Buildroot] gtkmm in buildroot toolchain Willy
2012-01-27 10:19 ` Thomas Petazzoni
2012-01-27 12:49   ` Michael S. Zick
2012-01-27 14:11   ` Willy
2012-01-27 14:27     ` Michael S. Zick
2012-01-27 14:38       ` Willy
2012-01-27 15:14         ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox