* [Buildroot] Buildroot package for psycopg module for Beaglebone black
@ 2016-06-28 11:25 pborut123
2016-06-28 23:27 ` Arnout Vandecappelle
0 siblings, 1 reply; 8+ messages in thread
From: pborut123 @ 2016-06-28 11:25 UTC (permalink / raw)
To: buildroot
Hello,
I'm new to this mailing list, quite new to buildroot, too.
I'm trying to build distribution for Beaglebone black with Python 3.5.1
and postgresql 9.5.2.
I want to have also psycopg2 module that is not present in current
package list.
I've tried to make my own package but I'm not successful.
Last error, I've received from build is at installation step:
>>> python-psycopg 2.6.1 Installing to target
...
error: option --executable not recognized
make: ***
[..buildroot/output/build/python-psycopg-2.6.1/.stamp_target_installed]
Error 1
My question is if can anybody help me with this, pointing me on what
I've done wrong.
Here is my package code:
PYTHON_PSYCOPG_VERSION = 2.6.1
PYTHON_PSYCOPG_SOURCE = psycopg2-$(PYTHON_PSYCOPG_VERSION).tar.gz
PYTHON_PSYCOPG_SITE = http://initd.org/psycopg/tarballs/PSYCOPG-2-6
PYTHON_PSYCOPG_LICENSE = GPLv2
PYTHON_PSYCOPG_LICENSE_FILES = LICENSE
PYTHON_PSYCOPG_SETUP_TYPE = setuptools
PYTHON_PSYCOPG_BUILD_OPTS = build_ext --pg-config
$(STAGING_DIR)/usr/bin/pg_config build
define PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG
$(INSTALL) -m 0755 -D package/python-psycopg/pg_config \
$(STAGING_DIR)/usr/bin/pg_config
endef
PYTHON_PSYCOPG_PRE_BUILD_HOOKS += PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG
$(eval $(python-package))
and here is missing host pg_config file, I've inserted to setup.py:
#!/bin/sh
# I've pointed to already cross-build posgresql base directory in build
prefix=buildroot/output/build/postgresql-9.5.2/src
case "$1" in
--includedir)
echo "$prefix/include"
;;
--libdir)
echo "$prefix/lib"
;;
--version)
echo "PostgreSQL 9.5.2"
;;
*)
echo "Usage: $0 {--includedir|--libdir}"
esac
Thank you and best regards,
Borut.
^ permalink raw reply [flat|nested] 8+ messages in thread* [Buildroot] Buildroot package for psycopg module for Beaglebone black 2016-06-28 11:25 [Buildroot] Buildroot package for psycopg module for Beaglebone black pborut123 @ 2016-06-28 23:27 ` Arnout Vandecappelle 2016-06-29 7:47 ` pborut123 0 siblings, 1 reply; 8+ messages in thread From: Arnout Vandecappelle @ 2016-06-28 23:27 UTC (permalink / raw) To: buildroot On 28-06-16 13:25, pborut123 wrote: > Hello, > > I'm new to this mailing list, quite new to buildroot, too. > I'm trying to build distribution for Beaglebone black with Python 3.5.1 and > postgresql 9.5.2. > I want to have also psycopg2 module that is not present in current package list. > I've tried to make my own package but I'm not successful. > > Last error, I've received from build is at installation step: >>>> python-psycopg 2.6.1 Installing to target > ... > error: option --executable not recognized We're missing some context here: which command issued this error? It should be written a few lines above. > make: *** > [..buildroot/output/build/python-psycopg-2.6.1/.stamp_target_installed] Error 1 > > My question is if can anybody help me with this, pointing me on what I've done > wrong. > > Here is my package code: > > PYTHON_PSYCOPG_VERSION = 2.6.1 > PYTHON_PSYCOPG_SOURCE = psycopg2-$(PYTHON_PSYCOPG_VERSION).tar.gz > PYTHON_PSYCOPG_SITE = http://initd.org/psycopg/tarballs/PSYCOPG-2-6 > PYTHON_PSYCOPG_LICENSE = GPLv2 > PYTHON_PSYCOPG_LICENSE_FILES = LICENSE > PYTHON_PSYCOPG_SETUP_TYPE = setuptools > PYTHON_PSYCOPG_BUILD_OPTS = build_ext --pg-config > $(STAGING_DIR)/usr/bin/pg_config build > You will certainly need PYTHON_PSYCOPG_DEPENDENCIES = postgresql > define PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG > $(INSTALL) -m 0755 -D package/python-psycopg/pg_config \ > $(STAGING_DIR)/usr/bin/pg_config Eek? Why would you want to do this? You should use the pg_config provided by postgresql, otherwise things will probably go wrong. Regards, Arnout > endef > PYTHON_PSYCOPG_PRE_BUILD_HOOKS += PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG > $(eval $(python-package)) > > and here is missing host pg_config file, I've inserted to setup.py: > > #!/bin/sh > # I've pointed to already cross-build posgresql base directory in build > prefix=buildroot/output/build/postgresql-9.5.2/src > > case "$1" in > --includedir) > echo "$prefix/include" > ;; > --libdir) > echo "$prefix/lib" > ;; > --version) > echo "PostgreSQL 9.5.2" > ;; > > *) > echo "Usage: $0 {--includedir|--libdir}" > esac > > Thank you and best regards, > Borut. > > > > > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot > -- Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] Buildroot package for psycopg module for Beaglebone black 2016-06-28 23:27 ` Arnout Vandecappelle @ 2016-06-29 7:47 ` pborut123 2016-06-29 8:09 ` Yegor Yefremov 0 siblings, 1 reply; 8+ messages in thread From: pborut123 @ 2016-06-29 7:47 UTC (permalink / raw) To: buildroot Hello Arnout, Thank you for your answer. In the mean time, I've managed to solve problem by myself. message 'error: option --executable not recognized' was issued from python setup.py install ...options... One of options was --executable=/usr/bin/python that came from buildroot's main python package makefile pkg-python.mk, see here excerpt: PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS = \ --prefix=$(TARGET_DIR)/usr \ --executable=/usr/bin/python \ --single-version-externally-managed \ --root=/ I have removed line '--executable=/usr/bin/python' and package built correctly. I'm not deeply familiar with python setup system, but I guess that here must be some difference in installation of pure python modules and modules that use cython, which is the case of psycopg2. I have added several other python packages that were pure python ones without problem and using original script. I have rebuilt whole system, having many python modules, with above change without problems I haven't commited that change back, so that I don't break anything else. Since I've changed pkg-python.mk which is used by many python modules that I didn't try, I haven't commited that change back, so that I don't break anything else. I can do it of course. Do you perhaps know, are here some rules on commits of this sort? Thank you and best regards, Borut. On 29.6.2016 1:27, Arnout Vandecappelle wrote: > On 28-06-16 13:25, pborut123 wrote: >> Hello, >> >> I'm new to this mailing list, quite new to buildroot, too. >> I'm trying to build distribution for Beaglebone black with Python 3.5.1 and >> postgresql 9.5.2. >> I want to have also psycopg2 module that is not present in current package list. >> I've tried to make my own package but I'm not successful. >> >> Last error, I've received from build is at installation step: >>>>> python-psycopg 2.6.1 Installing to target >> ... >> error: option --executable not recognized > We're missing some context here: which command issued this error? It should be > written a few lines above. > >> make: *** >> [..buildroot/output/build/python-psycopg-2.6.1/.stamp_target_installed] Error 1 >> >> My question is if can anybody help me with this, pointing me on what I've done >> wrong. >> >> Here is my package code: >> >> PYTHON_PSYCOPG_VERSION = 2.6.1 >> PYTHON_PSYCOPG_SOURCE = psycopg2-$(PYTHON_PSYCOPG_VERSION).tar.gz >> PYTHON_PSYCOPG_SITE = http://initd.org/psycopg/tarballs/PSYCOPG-2-6 >> PYTHON_PSYCOPG_LICENSE = GPLv2 >> PYTHON_PSYCOPG_LICENSE_FILES = LICENSE >> PYTHON_PSYCOPG_SETUP_TYPE = setuptools >> PYTHON_PSYCOPG_BUILD_OPTS = build_ext --pg-config >> $(STAGING_DIR)/usr/bin/pg_config build >> > You will certainly need > > PYTHON_PSYCOPG_DEPENDENCIES = postgresql > >> define PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >> $(INSTALL) -m 0755 -D package/python-psycopg/pg_config \ >> $(STAGING_DIR)/usr/bin/pg_config > Eek? Why would you want to do this? You should use the pg_config provided by > postgresql, otherwise things will probably go wrong. > > Regards, > Arnout > > >> endef >> PYTHON_PSYCOPG_PRE_BUILD_HOOKS += PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >> $(eval $(python-package)) >> >> and here is missing host pg_config file, I've inserted to setup.py: >> >> #!/bin/sh >> # I've pointed to already cross-build posgresql base directory in build >> prefix=buildroot/output/build/postgresql-9.5.2/src >> >> case "$1" in >> --includedir) >> echo "$prefix/include" >> ;; >> --libdir) >> echo "$prefix/lib" >> ;; >> --version) >> echo "PostgreSQL 9.5.2" >> ;; >> >> *) >> echo "Usage: $0 {--includedir|--libdir}" >> esac >> >> Thank you and best regards, >> Borut. >> >> >> >> >> >> _______________________________________________ >> buildroot mailing list >> buildroot at busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot >> > ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] Buildroot package for psycopg module for Beaglebone black 2016-06-29 7:47 ` pborut123 @ 2016-06-29 8:09 ` Yegor Yefremov 2016-06-29 9:28 ` pborut123 0 siblings, 1 reply; 8+ messages in thread From: Yegor Yefremov @ 2016-06-29 8:09 UTC (permalink / raw) To: buildroot On Wed, Jun 29, 2016 at 9:47 AM, pborut123 <pborut123@gmail.com> wrote: > Hello Arnout, > > Thank you for your answer. > In the mean time, I've managed to solve problem by myself. > > message 'error: option --executable not recognized' was issued from > python setup.py install ...options... > One of options was --executable=/usr/bin/python that came from buildroot's > main python package makefile > pkg-python.mk, see here excerpt: > > PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS = \ > --prefix=$(TARGET_DIR)/usr \ > --executable=/usr/bin/python \ > --single-version-externally-managed \ > --root=/ > > I have removed line '--executable=/usr/bin/python' and package built > correctly. > I'm not deeply familiar with python setup system, but I guess that here must > be > some difference in installation of pure python modules and modules that use > cython, which is the case of psycopg2. > I have added several other python packages that were pure python ones > without problem and using original script. > > I have rebuilt whole system, having many python modules, with above change > without problems > I haven't commited that change back, so that I don't break anything else. > Since I've changed pkg-python.mk which is used by many python modules that I > didn't try, I haven't commited that change back, so that I don't break > anything else. > > I can do it of course. > Do you perhaps know, are here some rules on commits of this sort? > > Thank you and best regards, > Borut. > > On 29.6.2016 1:27, Arnout Vandecappelle wrote: >> >> On 28-06-16 13:25, pborut123 wrote: >>> >>> Hello, >>> >>> I'm new to this mailing list, quite new to buildroot, too. >>> I'm trying to build distribution for Beaglebone black with Python 3.5.1 >>> and >>> postgresql 9.5.2. >>> I want to have also psycopg2 module that is not present in current >>> package list. >>> I've tried to make my own package but I'm not successful. >>> >>> Last error, I've received from build is at installation step: >>>>>> >>>>>> python-psycopg 2.6.1 Installing to target >>> >>> ... >>> error: option --executable not recognized >> >> We're missing some context here: which command issued this error? It >> should be >> written a few lines above. >> >>> make: *** >>> [..buildroot/output/build/python-psycopg-2.6.1/.stamp_target_installed] >>> Error 1 >>> >>> My question is if can anybody help me with this, pointing me on what I've >>> done >>> wrong. >>> >>> Here is my package code: >>> >>> PYTHON_PSYCOPG_VERSION = 2.6.1 >>> PYTHON_PSYCOPG_SOURCE = psycopg2-$(PYTHON_PSYCOPG_VERSION).tar.gz >>> PYTHON_PSYCOPG_SITE = http://initd.org/psycopg/tarballs/PSYCOPG-2-6 >>> PYTHON_PSYCOPG_LICENSE = GPLv2 >>> PYTHON_PSYCOPG_LICENSE_FILES = LICENSE >>> PYTHON_PSYCOPG_SETUP_TYPE = setuptools psycopg needs distutils and not setuptools. You can automatically create recipes for PyPi packages. Just invoke ./support/scripts/scanpypi psycopg2 and then add psycong entry into package/Config.in and fix dependencies. See http://nightly.buildroot.org/manual.html#_infrastructure_for_python_packages and "17.8.3. Generating a python-package from a PyPI repository" for details. >>> PYTHON_PSYCOPG_BUILD_OPTS = build_ext --pg-config >>> $(STAGING_DIR)/usr/bin/pg_config build >>> >> You will certainly need >> >> PYTHON_PSYCOPG_DEPENDENCIES = postgresql >> >>> define PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>> $(INSTALL) -m 0755 -D package/python-psycopg/pg_config \ >>> $(STAGING_DIR)/usr/bin/pg_config >> >> Eek? Why would you want to do this? You should use the pg_config >> provided by >> postgresql, otherwise things will probably go wrong. >> >> Regards, >> Arnout >> >> >>> endef >>> PYTHON_PSYCOPG_PRE_BUILD_HOOKS += PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>> $(eval $(python-package)) >>> >>> and here is missing host pg_config file, I've inserted to setup.py: >>> >>> #!/bin/sh >>> # I've pointed to already cross-build posgresql base directory in build >>> prefix=buildroot/output/build/postgresql-9.5.2/src >>> >>> case "$1" in >>> --includedir) >>> echo "$prefix/include" >>> ;; >>> --libdir) >>> echo "$prefix/lib" >>> ;; >>> --version) >>> echo "PostgreSQL 9.5.2" >>> ;; >>> >>> *) >>> echo "Usage: $0 {--includedir|--libdir}" >>> esac >>> >>> Thank you and best regards, >>> Borut. >>> >>> >>> >>> >>> >>> _______________________________________________ >>> buildroot mailing list >>> buildroot at busybox.net >>> http://lists.busybox.net/mailman/listinfo/buildroot >>> >> > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] Buildroot package for psycopg module for Beaglebone black 2016-06-29 8:09 ` Yegor Yefremov @ 2016-06-29 9:28 ` pborut123 2016-06-29 9:42 ` Yegor Yefremov 0 siblings, 1 reply; 8+ messages in thread From: pborut123 @ 2016-06-29 9:28 UTC (permalink / raw) To: buildroot Hello Yegor, Thanks for your suggestion and explanation. I will correct my solution and do it properly as you've pointed me to. I have another question, if I may. I'd like to have python-supervisor functionality in otherwise python3 system. Python-supervisor would be only program using python2. Do you have suggestion on how could this be solved? Best regards, Borut. On 29.6.2016 10:09, Yegor Yefremov wrote: > On Wed, Jun 29, 2016 at 9:47 AM, pborut123 <pborut123@gmail.com> wrote: >> Hello Arnout, >> >> Thank you for your answer. >> In the mean time, I've managed to solve problem by myself. >> >> message 'error: option --executable not recognized' was issued from >> python setup.py install ...options... >> One of options was --executable=/usr/bin/python that came from buildroot's >> main python package makefile >> pkg-python.mk, see here excerpt: >> >> PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS = \ >> --prefix=$(TARGET_DIR)/usr \ >> --executable=/usr/bin/python \ >> --single-version-externally-managed \ >> --root=/ >> >> I have removed line '--executable=/usr/bin/python' and package built >> correctly. >> I'm not deeply familiar with python setup system, but I guess that here must >> be >> some difference in installation of pure python modules and modules that use >> cython, which is the case of psycopg2. >> I have added several other python packages that were pure python ones >> without problem and using original script. >> >> I have rebuilt whole system, having many python modules, with above change >> without problems >> I haven't commited that change back, so that I don't break anything else. >> Since I've changed pkg-python.mk which is used by many python modules that I >> didn't try, I haven't commited that change back, so that I don't break >> anything else. >> >> I can do it of course. >> Do you perhaps know, are here some rules on commits of this sort? >> >> Thank you and best regards, >> Borut. >> >> On 29.6.2016 1:27, Arnout Vandecappelle wrote: >>> On 28-06-16 13:25, pborut123 wrote: >>>> Hello, >>>> >>>> I'm new to this mailing list, quite new to buildroot, too. >>>> I'm trying to build distribution for Beaglebone black with Python 3.5.1 >>>> and >>>> postgresql 9.5.2. >>>> I want to have also psycopg2 module that is not present in current >>>> package list. >>>> I've tried to make my own package but I'm not successful. >>>> >>>> Last error, I've received from build is at installation step: >>>>>>> python-psycopg 2.6.1 Installing to target >>>> ... >>>> error: option --executable not recognized >>> We're missing some context here: which command issued this error? It >>> should be >>> written a few lines above. >>> >>>> make: *** >>>> [..buildroot/output/build/python-psycopg-2.6.1/.stamp_target_installed] >>>> Error 1 >>>> >>>> My question is if can anybody help me with this, pointing me on what I've >>>> done >>>> wrong. >>>> >>>> Here is my package code: >>>> >>>> PYTHON_PSYCOPG_VERSION = 2.6.1 >>>> PYTHON_PSYCOPG_SOURCE = psycopg2-$(PYTHON_PSYCOPG_VERSION).tar.gz >>>> PYTHON_PSYCOPG_SITE = http://initd.org/psycopg/tarballs/PSYCOPG-2-6 >>>> PYTHON_PSYCOPG_LICENSE = GPLv2 >>>> PYTHON_PSYCOPG_LICENSE_FILES = LICENSE >>>> PYTHON_PSYCOPG_SETUP_TYPE = setuptools > psycopg needs distutils and not setuptools. > > You can automatically create recipes for PyPi packages. Just invoke > > ./support/scripts/scanpypi psycopg2 > > and then add psycong entry into package/Config.in and fix dependencies. > > See http://nightly.buildroot.org/manual.html#_infrastructure_for_python_packages > and "17.8.3. Generating a python-package from a PyPI repository" for > details. > >>>> PYTHON_PSYCOPG_BUILD_OPTS = build_ext --pg-config >>>> $(STAGING_DIR)/usr/bin/pg_config build >>>> >>> You will certainly need >>> >>> PYTHON_PSYCOPG_DEPENDENCIES = postgresql >>> >>>> define PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>>> $(INSTALL) -m 0755 -D package/python-psycopg/pg_config \ >>>> $(STAGING_DIR)/usr/bin/pg_config >>> Eek? Why would you want to do this? You should use the pg_config >>> provided by >>> postgresql, otherwise things will probably go wrong. >>> >>> Regards, >>> Arnout >>> >>> >>>> endef >>>> PYTHON_PSYCOPG_PRE_BUILD_HOOKS += PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>>> $(eval $(python-package)) >>>> >>>> and here is missing host pg_config file, I've inserted to setup.py: >>>> >>>> #!/bin/sh >>>> # I've pointed to already cross-build posgresql base directory in build >>>> prefix=buildroot/output/build/postgresql-9.5.2/src >>>> >>>> case "$1" in >>>> --includedir) >>>> echo "$prefix/include" >>>> ;; >>>> --libdir) >>>> echo "$prefix/lib" >>>> ;; >>>> --version) >>>> echo "PostgreSQL 9.5.2" >>>> ;; >>>> >>>> *) >>>> echo "Usage: $0 {--includedir|--libdir}" >>>> esac >>>> >>>> Thank you and best regards, >>>> Borut. >>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> buildroot mailing list >>>> buildroot at busybox.net >>>> http://lists.busybox.net/mailman/listinfo/buildroot >>>> >> _______________________________________________ >> buildroot mailing list >> buildroot at busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] Buildroot package for psycopg module for Beaglebone black 2016-06-29 9:28 ` pborut123 @ 2016-06-29 9:42 ` Yegor Yefremov 2016-06-29 14:32 ` pborut123 0 siblings, 1 reply; 8+ messages in thread From: Yegor Yefremov @ 2016-06-29 9:42 UTC (permalink / raw) To: buildroot On Wed, Jun 29, 2016 at 11:28 AM, pborut123 <pborut123@gmail.com> wrote: > Hello Yegor, > > Thanks for your suggestion and explanation. > I will correct my solution and do it properly as you've pointed me to. > > I have another question, if I may. > I'd like to have python-supervisor functionality in otherwise python3 > system. > Python-supervisor would be only program using python2. > > Do you have suggestion on how could this be solved? So far only one python version at a time is supported. What about using https://circus.readthedocs.io/en/latest/? You'll find related patch here http://patchwork.ozlabs.org/patch/641872/ > Best regards, > Borut. > > > On 29.6.2016 10:09, Yegor Yefremov wrote: >> >> On Wed, Jun 29, 2016 at 9:47 AM, pborut123 <pborut123@gmail.com> wrote: >>> >>> Hello Arnout, >>> >>> Thank you for your answer. >>> In the mean time, I've managed to solve problem by myself. >>> >>> message 'error: option --executable not recognized' was issued from >>> python setup.py install ...options... >>> One of options was --executable=/usr/bin/python that came from >>> buildroot's >>> main python package makefile >>> pkg-python.mk, see here excerpt: >>> >>> PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS = \ >>> --prefix=$(TARGET_DIR)/usr \ >>> --executable=/usr/bin/python \ >>> --single-version-externally-managed \ >>> --root=/ >>> >>> I have removed line '--executable=/usr/bin/python' and package built >>> correctly. >>> I'm not deeply familiar with python setup system, but I guess that here >>> must >>> be >>> some difference in installation of pure python modules and modules that >>> use >>> cython, which is the case of psycopg2. >>> I have added several other python packages that were pure python ones >>> without problem and using original script. >>> >>> I have rebuilt whole system, having many python modules, with above >>> change >>> without problems >>> I haven't commited that change back, so that I don't break anything else. >>> Since I've changed pkg-python.mk which is used by many python modules >>> that I >>> didn't try, I haven't commited that change back, so that I don't break >>> anything else. >>> >>> I can do it of course. >>> Do you perhaps know, are here some rules on commits of this sort? >>> >>> Thank you and best regards, >>> Borut. >>> >>> On 29.6.2016 1:27, Arnout Vandecappelle wrote: >>>> >>>> On 28-06-16 13:25, pborut123 wrote: >>>>> >>>>> Hello, >>>>> >>>>> I'm new to this mailing list, quite new to buildroot, too. >>>>> I'm trying to build distribution for Beaglebone black with Python 3.5.1 >>>>> and >>>>> postgresql 9.5.2. >>>>> I want to have also psycopg2 module that is not present in current >>>>> package list. >>>>> I've tried to make my own package but I'm not successful. >>>>> >>>>> Last error, I've received from build is at installation step: >>>>>>>> >>>>>>>> python-psycopg 2.6.1 Installing to target >>>>> >>>>> ... >>>>> error: option --executable not recognized >>>> >>>> We're missing some context here: which command issued this error? It >>>> should be >>>> written a few lines above. >>>> >>>>> make: *** >>>>> [..buildroot/output/build/python-psycopg-2.6.1/.stamp_target_installed] >>>>> Error 1 >>>>> >>>>> My question is if can anybody help me with this, pointing me on what >>>>> I've >>>>> done >>>>> wrong. >>>>> >>>>> Here is my package code: >>>>> >>>>> PYTHON_PSYCOPG_VERSION = 2.6.1 >>>>> PYTHON_PSYCOPG_SOURCE = psycopg2-$(PYTHON_PSYCOPG_VERSION).tar.gz >>>>> PYTHON_PSYCOPG_SITE = http://initd.org/psycopg/tarballs/PSYCOPG-2-6 >>>>> PYTHON_PSYCOPG_LICENSE = GPLv2 >>>>> PYTHON_PSYCOPG_LICENSE_FILES = LICENSE >>>>> PYTHON_PSYCOPG_SETUP_TYPE = setuptools >> >> psycopg needs distutils and not setuptools. >> >> You can automatically create recipes for PyPi packages. Just invoke >> >> ./support/scripts/scanpypi psycopg2 >> >> and then add psycong entry into package/Config.in and fix dependencies. >> >> See >> http://nightly.buildroot.org/manual.html#_infrastructure_for_python_packages >> and "17.8.3. Generating a python-package from a PyPI repository" for >> details. >> >>>>> PYTHON_PSYCOPG_BUILD_OPTS = build_ext --pg-config >>>>> $(STAGING_DIR)/usr/bin/pg_config build >>>>> >>>> You will certainly need >>>> >>>> PYTHON_PSYCOPG_DEPENDENCIES = postgresql >>>> >>>>> define PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>>>> $(INSTALL) -m 0755 -D package/python-psycopg/pg_config \ >>>>> $(STAGING_DIR)/usr/bin/pg_config >>>> >>>> Eek? Why would you want to do this? You should use the pg_config >>>> provided by >>>> postgresql, otherwise things will probably go wrong. >>>> >>>> Regards, >>>> Arnout >>>> >>>> >>>>> endef >>>>> PYTHON_PSYCOPG_PRE_BUILD_HOOKS += >>>>> PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>>>> $(eval $(python-package)) >>>>> >>>>> and here is missing host pg_config file, I've inserted to setup.py: >>>>> >>>>> #!/bin/sh >>>>> # I've pointed to already cross-build posgresql base directory in build >>>>> prefix=buildroot/output/build/postgresql-9.5.2/src >>>>> >>>>> case "$1" in >>>>> --includedir) >>>>> echo "$prefix/include" >>>>> ;; >>>>> --libdir) >>>>> echo "$prefix/lib" >>>>> ;; >>>>> --version) >>>>> echo "PostgreSQL 9.5.2" >>>>> ;; >>>>> >>>>> *) >>>>> echo "Usage: $0 {--includedir|--libdir}" >>>>> esac >>>>> >>>>> Thank you and best regards, >>>>> Borut. >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> buildroot mailing list >>>>> buildroot at busybox.net >>>>> http://lists.busybox.net/mailman/listinfo/buildroot >>>>> >>> _______________________________________________ >>> buildroot mailing list >>> buildroot at busybox.net >>> http://lists.busybox.net/mailman/listinfo/buildroot > > ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] Buildroot package for psycopg module for Beaglebone black 2016-06-29 9:42 ` Yegor Yefremov @ 2016-06-29 14:32 ` pborut123 2016-06-30 15:26 ` Arnout Vandecappelle 0 siblings, 1 reply; 8+ messages in thread From: pborut123 @ 2016-06-29 14:32 UTC (permalink / raw) To: buildroot Hello Yegor, Thank you for suggestion. I'll see if circus is option to me. BTW: psycopg2 with scanpypi suggestion worked good. I had to modify generated solution only to add (fake) host side pg_config script, that is missing from postgresql package. I think that here pg_config is needed only to get postgresql version. Best regards, Borut. On 29.6.2016 11:42, Yegor Yefremov wrote: > On Wed, Jun 29, 2016 at 11:28 AM, pborut123 <pborut123@gmail.com> wrote: >> Hello Yegor, >> >> Thanks for your suggestion and explanation. >> I will correct my solution and do it properly as you've pointed me to. >> >> I have another question, if I may. >> I'd like to have python-supervisor functionality in otherwise python3 >> system. >> Python-supervisor would be only program using python2. >> >> Do you have suggestion on how could this be solved? > So far only one python version at a time is supported. > > What about using https://circus.readthedocs.io/en/latest/? > > You'll find related patch here http://patchwork.ozlabs.org/patch/641872/ > >> Best regards, >> Borut. >> >> >> On 29.6.2016 10:09, Yegor Yefremov wrote: >>> On Wed, Jun 29, 2016 at 9:47 AM, pborut123 <pborut123@gmail.com> wrote: >>>> Hello Arnout, >>>> >>>> Thank you for your answer. >>>> In the mean time, I've managed to solve problem by myself. >>>> >>>> message 'error: option --executable not recognized' was issued from >>>> python setup.py install ...options... >>>> One of options was --executable=/usr/bin/python that came from >>>> buildroot's >>>> main python package makefile >>>> pkg-python.mk, see here excerpt: >>>> >>>> PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS = \ >>>> --prefix=$(TARGET_DIR)/usr \ >>>> --executable=/usr/bin/python \ >>>> --single-version-externally-managed \ >>>> --root=/ >>>> >>>> I have removed line '--executable=/usr/bin/python' and package built >>>> correctly. >>>> I'm not deeply familiar with python setup system, but I guess that here >>>> must >>>> be >>>> some difference in installation of pure python modules and modules that >>>> use >>>> cython, which is the case of psycopg2. >>>> I have added several other python packages that were pure python ones >>>> without problem and using original script. >>>> >>>> I have rebuilt whole system, having many python modules, with above >>>> change >>>> without problems >>>> I haven't commited that change back, so that I don't break anything else. >>>> Since I've changed pkg-python.mk which is used by many python modules >>>> that I >>>> didn't try, I haven't commited that change back, so that I don't break >>>> anything else. >>>> >>>> I can do it of course. >>>> Do you perhaps know, are here some rules on commits of this sort? >>>> >>>> Thank you and best regards, >>>> Borut. >>>> >>>> On 29.6.2016 1:27, Arnout Vandecappelle wrote: >>>>> On 28-06-16 13:25, pborut123 wrote: >>>>>> Hello, >>>>>> >>>>>> I'm new to this mailing list, quite new to buildroot, too. >>>>>> I'm trying to build distribution for Beaglebone black with Python 3.5.1 >>>>>> and >>>>>> postgresql 9.5.2. >>>>>> I want to have also psycopg2 module that is not present in current >>>>>> package list. >>>>>> I've tried to make my own package but I'm not successful. >>>>>> >>>>>> Last error, I've received from build is at installation step: >>>>>>>>> python-psycopg 2.6.1 Installing to target >>>>>> ... >>>>>> error: option --executable not recognized >>>>> We're missing some context here: which command issued this error? It >>>>> should be >>>>> written a few lines above. >>>>> >>>>>> make: *** >>>>>> [..buildroot/output/build/python-psycopg-2.6.1/.stamp_target_installed] >>>>>> Error 1 >>>>>> >>>>>> My question is if can anybody help me with this, pointing me on what >>>>>> I've >>>>>> done >>>>>> wrong. >>>>>> >>>>>> Here is my package code: >>>>>> >>>>>> PYTHON_PSYCOPG_VERSION = 2.6.1 >>>>>> PYTHON_PSYCOPG_SOURCE = psycopg2-$(PYTHON_PSYCOPG_VERSION).tar.gz >>>>>> PYTHON_PSYCOPG_SITE = http://initd.org/psycopg/tarballs/PSYCOPG-2-6 >>>>>> PYTHON_PSYCOPG_LICENSE = GPLv2 >>>>>> PYTHON_PSYCOPG_LICENSE_FILES = LICENSE >>>>>> PYTHON_PSYCOPG_SETUP_TYPE = setuptools >>> psycopg needs distutils and not setuptools. >>> >>> You can automatically create recipes for PyPi packages. Just invoke >>> >>> ./support/scripts/scanpypi psycopg2 >>> >>> and then add psycong entry into package/Config.in and fix dependencies. >>> >>> See >>> http://nightly.buildroot.org/manual.html#_infrastructure_for_python_packages >>> and "17.8.3. Generating a python-package from a PyPI repository" for >>> details. >>> >>>>>> PYTHON_PSYCOPG_BUILD_OPTS = build_ext --pg-config >>>>>> $(STAGING_DIR)/usr/bin/pg_config build >>>>>> >>>>> You will certainly need >>>>> >>>>> PYTHON_PSYCOPG_DEPENDENCIES = postgresql >>>>> >>>>>> define PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>>>>> $(INSTALL) -m 0755 -D package/python-psycopg/pg_config \ >>>>>> $(STAGING_DIR)/usr/bin/pg_config >>>>> Eek? Why would you want to do this? You should use the pg_config >>>>> provided by >>>>> postgresql, otherwise things will probably go wrong. >>>>> >>>>> Regards, >>>>> Arnout >>>>> >>>>> >>>>>> endef >>>>>> PYTHON_PSYCOPG_PRE_BUILD_HOOKS += >>>>>> PYTHON_PSYCOPG_INSTALL_CUSTOM_PG_CONFIG >>>>>> $(eval $(python-package)) >>>>>> >>>>>> and here is missing host pg_config file, I've inserted to setup.py: >>>>>> >>>>>> #!/bin/sh >>>>>> # I've pointed to already cross-build posgresql base directory in build >>>>>> prefix=buildroot/output/build/postgresql-9.5.2/src >>>>>> >>>>>> case "$1" in >>>>>> --includedir) >>>>>> echo "$prefix/include" >>>>>> ;; >>>>>> --libdir) >>>>>> echo "$prefix/lib" >>>>>> ;; >>>>>> --version) >>>>>> echo "PostgreSQL 9.5.2" >>>>>> ;; >>>>>> >>>>>> *) >>>>>> echo "Usage: $0 {--includedir|--libdir}" >>>>>> esac >>>>>> >>>>>> Thank you and best regards, >>>>>> Borut. >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> buildroot mailing list >>>>>> buildroot at busybox.net >>>>>> http://lists.busybox.net/mailman/listinfo/buildroot >>>>>> >>>> _______________________________________________ >>>> buildroot mailing list >>>> buildroot at busybox.net >>>> http://lists.busybox.net/mailman/listinfo/buildroot >> ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] Buildroot package for psycopg module for Beaglebone black 2016-06-29 14:32 ` pborut123 @ 2016-06-30 15:26 ` Arnout Vandecappelle 0 siblings, 0 replies; 8+ messages in thread From: Arnout Vandecappelle @ 2016-06-30 15:26 UTC (permalink / raw) To: buildroot On 29-06-16 16:32, pborut123 wrote: > I had to modify generated solution only to add (fake) host side pg_config > script, that is missing from postgresql package. What you should do instead is to update package/postgresql/pg_config and add the required version option. And that should be a separate patch, of course. The commit log of that patch should mention that psycopg needs it. Regards, Arnout > I think that here pg_config is needed only to get postgresql version. -- Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-06-30 15:26 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-06-28 11:25 [Buildroot] Buildroot package for psycopg module for Beaglebone black pborut123 2016-06-28 23:27 ` Arnout Vandecappelle 2016-06-29 7:47 ` pborut123 2016-06-29 8:09 ` Yegor Yefremov 2016-06-29 9:28 ` pborut123 2016-06-29 9:42 ` Yegor Yefremov 2016-06-29 14:32 ` pborut123 2016-06-30 15:26 ` Arnout Vandecappelle
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox