Skip to contentSkip to conversation

ipv6 and eglibc

Buildroot Marco Trapanese 2 participants 5 messages Feb 18, 2014 – Feb 27, 2014

lore
Share & tools
lore
#0 lore raw

Hello,
I'm trying to add the postgres package, starting with this hints:

http://www.slideshare.net/jerome42/create-lightweight-docker-containers-with-buildroot

I'm using the eglibc in order to enable the eglsf support for Qt5. Postgresql requires the BR2_TOOLCHAIN_BUILDROOT_INET_IPV6.

Searching for this keyword I see this:

Symbol: BR2_TOOLCHAIN_BUILDROOT_INET_IPV6 [=n] ?
Type : boolean
Prompt: Enable IPv6 support
Location:
-> Toolchain
Defined at package/uclibc/Config.in:70
Depends on: BR2_TOOLCHAIN_BUILDROOT [=y] &&
BR2_TOOLCHAIN_BUILDROOT_UCLIBC [=n]
Selects: BR2_INET_IPV6 [=y] ?

I guess because I'm using eglibc instead of uclibc.

I have no knowledge to decide what I should do now.... Thank you for your support!
Marco

#1 lore raw

Dear Marco Trapanese,

Quoted 19 lines · Marco Trapanese

I'm trying to add the postgres package, starting with this hints:

http://www.slideshare.net/jerome42/create-lightweight-docker-containers-with-buildroot

I'm using the eglibc in order to enable the eglsf support for Qt5. Postgresql requires the BR2_TOOLCHAIN_BUILDROOT_INET_IPV6.

Searching for this keyword I see this:

Symbol: BR2_TOOLCHAIN_BUILDROOT_INET_IPV6 [=n] ?
Type : boolean
Prompt: Enable IPv6 support
Location:
-> Toolchain
Defined at package/uclibc/Config.in:70
Depends on: BR2_TOOLCHAIN_BUILDROOT [=y] &&
BR2_TOOLCHAIN_BUILDROOT_UCLIBC [=n]
Selects: BR2_INET_IPV6 [=y] ?

Quoted 1 line

I guess because I'm using eglibc instead of uclibc.

This is because what J?r?me (who happens to be my cousin) did was not completely correct (and I've Cc'ed J?r?me so he gets this feedback!).

Having a dependency on BR2_TOOLCHAIN_BUILDROOT_INET_IPV6 in a package is incorrect, as it only works with the internal toolchain backend, when building uClibc toolchains.

Instead, he should have read the great Buildroot documentation at
http://buildroot.org/downloads/manual/manual.html#dependencies-target-toolchain-options :-)

So, Marco, just modify the line:

depends on BR2_TOOLCHAIN_BUILDROOT_INET_IPV6

by:

depends on BR2_INET_IPV6

Also, please submit patches to add Postgresql support. Instead of having people following the not-completely correct tutorial of J?r?me, we would have Postgresql support in Buildroot itself.

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#2 lore raw

Dear Thomas Petazzoni,
thank you for you kind and fast answer. I'll submit the patch (after checked it works ;-) )

Best Regards
Marco

--

Il 18/02/2014 09:46, Thomas Petazzoni ha scritto:

Quoted 50 lines

Dear Marco Trapanese,

Quoted 19 lines · Marco Trapanese

I'm trying to add the postgres package, starting with this hints:

http://www.slideshare.net/jerome42/create-lightweight-docker-containers-with-buildroot

I'm using the eglibc in order to enable the eglsf support for Qt5. Postgresql requires the BR2_TOOLCHAIN_BUILDROOT_INET_IPV6.

Searching for this keyword I see this:

Symbol: BR2_TOOLCHAIN_BUILDROOT_INET_IPV6 [=n] ?
Type : boolean
Prompt: Enable IPv6 support
Location:
-> Toolchain
Defined at package/uclibc/Config.in:70
Depends on: BR2_TOOLCHAIN_BUILDROOT [=y] &&
BR2_TOOLCHAIN_BUILDROOT_UCLIBC [=n]
Selects: BR2_INET_IPV6 [=y] ?

Quoted 1 line

I guess because I'm using eglibc instead of uclibc.

This is because what J?r?me (who happens to be my cousin) did was not completely correct (and I've Cc'ed J?r?me so he gets this feedback!).

Having a dependency on BR2_TOOLCHAIN_BUILDROOT_INET_IPV6 in a package is incorrect, as it only works with the internal toolchain backend, when building uClibc toolchains.

Instead, he should have read the great Buildroot documentation at
http://buildroot.org/downloads/manual/manual.html#dependencies-target-toolchain-options :-)

So, Marco, just modify the line:

depends on BR2_TOOLCHAIN_BUILDROOT_INET_IPV6

by:

depends on BR2_INET_IPV6

Also, please submit patches to add Postgresql support. Instead of having people following the not-completely correct tutorial of J?r?me, we would have Postgresql support in Buildroot itself.

Thanks!

Thomas

#3 lore raw
In reply to Thomas Petazzoni

Thomas,
here my current package files of postres:

Config.in
config BR2_PACKAGE_POSTGRES
bool "postgres"
depends on BR2_INET_IPV6
help
Postgres SQL server

comment "postgres requires a toolchain with IPV6 support enabled"
depends on !BR2_INET_IPV6

postgres.mk
POSTGRES_VERSION=9.3.2 POSTGRES_SOURCE=postgresql-$(POSTGRES_VERSION).tar.gz POSTGRES_SITE=http://ftp.postgresql.org/pub/source/v$(POSTGRES_VERSION)/($POSTGRES_SOURCE) POSTGRES_CONF_OPT=--with-system-tzdata=/usr/share/zoneinfo POSTGRES_DEPENDENCIES=readline zlib

$(eval $(autotool-package))

I added the source item in the main Config.in and I selected the "postgres" package in the nconfig menu.
However, I can't see any reference to it neither in the Makefile nor in the build directory (of course after a make clean all cycle).

I read the guide at the autotools-based packages but it seems it doesn't try at all to download and compile it. What should I check to be sure buildroot understand it has to?

By the way my .config file contains the following:

BR2_PACKAGE_POSTGRES=y

Thanks!
Marco

Il 18/02/2014 09:46, Thomas Petazzoni ha scritto:

Quoted 50 lines

Dear Marco Trapanese,

Quoted 19 lines · Marco Trapanese

I'm trying to add the postgres package, starting with this hints:

http://www.slideshare.net/jerome42/create-lightweight-docker-containers-with-buildroot

I'm using the eglibc in order to enable the eglsf support for Qt5. Postgresql requires the BR2_TOOLCHAIN_BUILDROOT_INET_IPV6.

Searching for this keyword I see this:

Symbol: BR2_TOOLCHAIN_BUILDROOT_INET_IPV6 [=n] ?
Type : boolean
Prompt: Enable IPv6 support
Location:
-> Toolchain
Defined at package/uclibc/Config.in:70
Depends on: BR2_TOOLCHAIN_BUILDROOT [=y] &&
BR2_TOOLCHAIN_BUILDROOT_UCLIBC [=n]
Selects: BR2_INET_IPV6 [=y] ?

Quoted 1 line

I guess because I'm using eglibc instead of uclibc.

This is because what J?r?me (who happens to be my cousin) did was not completely correct (and I've Cc'ed J?r?me so he gets this feedback!).

Having a dependency on BR2_TOOLCHAIN_BUILDROOT_INET_IPV6 in a package is incorrect, as it only works with the internal toolchain backend, when building uClibc toolchains.

Instead, he should have read the great Buildroot documentation at
http://buildroot.org/downloads/manual/manual.html#dependencies-target-toolchain-options :-)

So, Marco, just modify the line:

depends on BR2_TOOLCHAIN_BUILDROOT_INET_IPV6

by:

depends on BR2_INET_IPV6

Also, please submit patches to add Postgresql support. Instead of having people following the not-completely correct tutorial of J?r?me, we would have Postgresql support in Buildroot itself.

Thanks!

Thomas

#4 lore raw

Dear Marco Trapanese,

Quoted 10 lines · Marco Trapanese

Thomas,
here my current package files of postres:

Config.in
config BR2_PACKAGE_POSTGRES
bool "postgres"
depends on BR2_INET_IPV6
help
Postgres SQL server

Quoted 2 lines

comment "postgres requires a toolchain with IPV6 support enabled"
depends on !BR2_INET_IPV6

This comment does not comply with the standard practices. See
http://buildroot.org/downloads/manual/manual.html#dependencies-target-toolchain-options.

Quoted 9 lines

postgres.mk
POSTGRES_VERSION=9.3.2 POSTGRES_SOURCE=postgresql-$(POSTGRES_VERSION).tar.gz POSTGRES_SITE=http://ftp.postgresql.org/pub/source/v$(POSTGRES_VERSION)/($POSTGRES_SOURCE) POSTGRES_CONF_OPT=--with-system-tzdata=/usr/share/zoneinfo POSTGRES_DEPENDENCIES=readline zlib

$(eval $(autotool-package))

This should be autotools-package. Make sure you read the Buildroot manual carefully, section
http://buildroot.org/downloads/manual/manual.html#_infrastructure_for_autotools_based_packages.

Quoted 4 lines

I added the source item in the main Config.in and I selected the "postgres" package in the nconfig menu.
However, I can't see any reference to it neither in the Makefile nor in the build directory (of course after a make clean all cycle).

See above, you made a small typo when calling the autotools-package macro.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com