On Fri, Oct 5, 2018 at 12:48 AM Brian Zambrano <bri...@gmail.com> wrote: > > In a Python project with a setup.py file, you can actually do "pip install ." > Of course you still need internet access for dependencies, which I have > during the build. This is similar to running "python setup.py install" in > the same directory.
curious where you found this innformatioon and what that recipe would look like ? > > I've tried setting SRC_URI="saunders_backend" along with "import setuptools". > That seems to run "python setup.py install" during the build phase, however > I get an error that setup.py cannot be found. > > Also, my setup.py contains a section for scripts, which results on my script > being placed into the a bin directory on the host when installed normally: > > scripts=['bin/server'], > > So, setup.py can do everything I need outside of bitbake/yocto...I just can't > figure out how to get it working during the bitbake build. > > On Thu, Oct 4, 2018 at 11:08 AM Shantanoo Desai <de...@uni-bremen.de> wrote: >> >> Hi Brian, >> >> >> >> It is confusing, I agree. But I think it is essential because I assume your >> Target is not connected to the Internet. When you do pip install <package> >> normally the package if fetched from the internet and then installed. In >> this case your app is local so need to have those files first built natively >> and then need to be sent to the appropriate folders for python to access >> them which I guess what setuptools does. Hence you set all the files in the >> SRC_URI. >> >> >> >> Do_install_append is only when you have binaries which could be used as >> command line utilities. >> >> >> (But I could also be completely wrong, not a Yocto guru here) >> >> >> >> Cheers >> >> >> >> Shan >> >> >> >> Von: Brian Zambrano <bri...@gmail.com> >> Gesendet: Donnerstag, 4. Oktober 2018 18:33 >> An: de...@uni-bremen.de >> Cc: yocto@yoctoproject.org >> Betreff: Re: [yocto] Installing Python app from source >> >> >> >> Thanks very much for this Shan. I have that book and was working through it >> yesterday, as a matter of fact. >> >> >> >> That part which is confusing to me in that recipe is that the SRC_URI points >> to every single file, there is a "inherit setuptools" line and also a >> do_install_append. I'm not sure how each of these are working together to >> get the application installed. I believe that the "inherit setuptools" will >> automatically run "python setup.py install", but when then is the source >> code manually copied over? >> >> >> >> BZ >> >> >> >> On Thu, Oct 4, 2018 at 2:13 AM Shantanoo Desai <de...@uni-bremen.de> wrote: >> >> Hi Brian, >> >> >> >> What you need in the .bb is a runtime-dependency. RDEPENDS_${PN} += “ >> ${PYTHON_PN}-flask ${PYTHON_PN}-jinja ${PYTHON_PN}-markdown” and so on. This >> will add these modules in the root-filesystem and will be available on the >> target. >> >> >> >> If you need some basic help with a python recipe, there is a git repository >> YoctoCookbook >> https://github.com/yoctocookbook/meta-custom/tree/master/recipes-python/python-helloworld >> to get you some idea. >> >> >> >> Please not I am in no ways a Yocto expert on recipe creations but for the >> past few weeks this is what I have been able to discover. Due to lack of >> examples on custom recipes in python this is the best I can help you with. >> >> >> >> >> >> Best Regards, >> >> >> >> Shan >> >> >> >> >> >> >> >> Von: yocto-boun...@yoctoproject.org <yocto-boun...@yoctoproject.org> Im >> Auftrag von Brian Zambrano >> Gesendet: Donnerstag, 4. Oktober 2018 00:52 >> An: yocto@yoctoproject.org >> Betreff: [yocto] Installing Python app from source >> >> >> >> I'm trying to install my own Python application from source, and having a >> hard time finding resources on how to accomplish it. I'm new to this >> ecosystem and am probably missing something fundamental. >> >> My recipe is structured like this...and my build is configure such that it >> does actually find it. >> >> ├── firmware-1.0 >> │ ├── saunders_backend >> │ └── saunders_frontend >> >> └── firmware_1.0.bb >> >> My application code which is for now just a "hello world" flask application, >> is in saunders_backend. The setup.py file in there works as expected when I >> use it in on my host machine. >> >> ├── firmware-1.0 >> │ ├── saunders_backend/ >> │ │ ├── bin/ >> │ │ │ └── server >> │ │ ├── MANIFEST.in >> │ │ ├── requirements.txt >> │ │ ├── saunders_apollo/ >> │ │ │ ├── config.py >> │ │ │ ├── __init__.py >> │ │ │ ├── models.py >> │ │ │ ├── static/ >> │ │ │ ├── templates/ >> │ │ │ └── views.py >> │ │ └── setup.py >> >> │ └── saunders_frontend/ >> └── firmware_1.0.bb >> >> >> I've been hacking on the .bb files to get it to install this into the >> resulting image. I do have IMAGE_INSTALL_append = " firmware" in the >> top-level local.conf. >> >> >> >> My primary confusion is that I don't know what I should be using for the >> python application. do_install, do_install_append? What should SRC_UIR be? >> In effect is that I want the exact same behavior of "cd saunders_backend && >> pip install ." My setup.py file has install_requires with a list of all >> dependencies, which now is merely Flask. >> >> >> >> Pointers would be appreciated. >> >> BZ > > -- > _______________________________________________ > yocto mailing list > yocto@yoctoproject.org > https://lists.yoctoproject.org/listinfo/yocto -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto