[PC-BSD Pbi-dev] lxsession-edit-0.2.0

Ken Moore ken at pcbsd.org
Thu Sep 15 10:41:54 PDT 2011


On 09/15/11 00:22, Ryan Mitchener wrote:
> Alright, I'm trying to learn how to create PBI's so I can be of more 
> help in the future. I figured I'd start with something small that 
> wasn't available in PBI repos or ports. So I am trying to create a PBI 
> of lxsession-edit.
>
> It is a small program that only has one out-of-box (LXDE) requirement 
> of intltool. So I simply installed that from ports and proceeded to 
> extract the source lxsession-edit tarball I downloaded from LXDE's 
> website.
>
> after extracting I ran ./configure --prefix=/home/lxsession-edit-pbi/
> then gmake
> then gmake install
>
> I then ran ldd on the lxsession-edit bin and copied all of the 
> required libraries into their respective folder in my 
> lxsession-edit-pbi folder.
>
> From the get go, I cannot run lxsession-edit program from within the 
> directory like I can run chromium from chromium's PBI install folder 
> in /usr/pbi/chromium-i386. lxsession-edit doesn't do anything. It just 
> says command not found.
>
> I went ahead and tried to create the PBI which I successfully did 
> using pbi_create. However even after "installing" it no folders or 
> files had be copied to /usr/pbi and I still could not run lxsession-edit.
>
> Where did I go wrong? I shouldn't need any scripts or a config file if 
> I input the pbi information into the pbi_create command correct? 
> Unfortunately the PBI creator pbi only works for pcbsd 8 as I am on 
> pcbsd 9 beta 2 now.
>
> Thanks for your help.
>
> -Ryan Mitchener
> _______________________________________________
> Pbi-dev mailing list
> Pbi-dev at lists.pcbsd.org
> http://lists.pcbsd.org/mailman/listinfo/pbi-dev
One thing that might be causing this is if the program executable that 
you are trying to run is actually a wrapper script of some kind rather 
than a binary file. For those, we usually have to check the first line 
of the file and make sure it is using the right path for the script 
language.
For example:
#!/bin/python   -> should become ->  #!/usr/pbi/(pbi-name)/bin/python

This is because each program is (or should be) packaged with the proper 
version of the language it uses (especially for these programs that are 
simply ruby/python scripts) and you want to make sure to use the right 
one. This is usually accomplished by putting a quick "sed" line in the 
post-install.sh script to fix the first line. If you want to see an 
example, take a look at the modules for games/fretsonfire or 
games/frozenbubble in our source tree (pbi/modules/games/....)

BTW, what folder are you running the program from?
i.e.  /usr/pbi/(pbi-name)/bin/   or   /usr/pbi/(pbi-name)/.sbin ?
The executables in the .sbin folder have all the linking properly set up 
(and run the command of the same name in the (pbi-name)/bin folder), and 
are the commands that should be run to start the program, otherwise you 
can get some interesting errors about missing files.

-- 
~~ Ken Moore ~~
PC-BSD/iXsystems



More information about the Pbi-dev mailing list