For example, get a package called "gst-plugins-good0.10":
Terminal 代码
- [sbox-SDK_ARMEL: ~] fakeroot apt-get update
- [sbox-SDK_ARMEL: ~] fakeroot apt-get build-dep gst-plugins-good0.10
- [sbox-SDK_ARMEL: ~] fakeroot apt-get source gst-plugins-good0.10
- [sbox-SDK_ARMEL: ~] cd gst-plugins-good0.10-0.10.4-osso2
Edit debian/control file for installation:
Terminal 代码
- [sbox-SDK_ARMEL: ~/gst-plugins-good0.10-0.10.4-osso2] vim debian/control
The default file is prepared for Linux desktop, not N800.
So change "Sections: utils" into "Sections: user/utils" in each package of control file.
It is because N800 puts all user datas under "user/" directory, while as other system folders are not visible.
All other sections written in control should alse be changed.
Known sections: utils, libs, devel...
Next, to build ded package which would be installable on N800:
Terminal 代码
- [sbox-SDK_ARMEL: ~/gst-plugins-good0.10-0.10.4-osso2] dpkg-buildpackage -rfakeroot -b
It will take some time.
After that, *.deb (could be 2 files or more) will appear in the home folder of scratchbox. (that is /scratchbox/user/cloud/home/cloud/)
Copy your own *.deb into N800.
If you see "Unable to install. Imcompatible package" while installing, mostly, your control file is not working correctly.
Check it out and do the packaging again.
We don't need to run:
Terminal 代码
- [sbox-SDK_ARMEL: ~/gst-plugins-good0.10-0.10.4-osso2] ./configure
- [sbox-SDK_ARMEL: ~/gst-plugins-good0.10-0.10.4-osso2] make
before dpkg-buildpackage, since it automatically runs both of them before packaging by default, which is controlled in /debian/rules.
However, if the sources have been modified, to save some time probably, run make to find errors before dpkg-buildpackage.
Another way of packaging:
The deb packaging process (dpkg-buildpackage) is totally controlled by the debian/ directory. But, some sources not from apt-get (got from www.debian.org) maybe doesn't contain the directory. So dh_make will be needed to create a widely usable template debian/, which includes default changelog, control, rules, etc. Dpkg-buildpackage can be runned after modified debian/control (change sections) and debian/rules (remove installdocs). But none of packages created this way have been proved effective, though normally installable.
Steps:
Terminal 代码
- $ sudo apt-get install dh-make dpkg-dev g++ patch make libc6-dev fakeroot libgtk2.0-dev
- [sbox-SDK_ARMEL: ~/test0.1] dh_make -e your@email.com -f ../SourceFileName.tar.gz
- [sbox-SDK_ARMEL: ~/test0.1] vim debian/control
- [sbox-SDK_ARMEL: ~/test0.1] vim debian/rules
- [sbox-SDK_ARMEL: ~/test0.1] dpkg-buildpackage -rfakeroot -b
Note:
dh-make is a tool package including dh_make, dh_installdocs, etc. Mostly dh-make is used in apt-get install. Pay attention to the difference between dh-make and dh_make
分享到:
相关推荐
在PyPA Installing Packages.rar这个压缩包中,我们可以找到关于如何在Python环境中正确安装PyPA包的详细指南。下面将对这个主题进行深入的探讨。 1. **理解PyPA和PyPI** PyPA是Python打包社区的核心,它维护了一...
【安装Asterisk从源代码】 在进行VoIP通信时,Asterisk是一个非常重要的开源PBX(Private Branch eXchange)系统,它支持多种协议,如SIP、PJSIP和WebRTC。本文主要讲解如何从源代码编译并安装Asterisk。...
2.9.2. Installing MySQL from a Standard Source Distribution 2.9.3. Installing MySQL from a Development Source Tree 2.9.4. MySQL Source-Configuration Options 2.9.5. Dealing with Problems Compiling ...
Components realize technology to store component properties to/from settings storage such as ini files, registry etc. TMemTableEh component dataset, which hold data in memory. Its possible consider...
SOFTWARE to the place from which you purchased it in accordance with the return policies of that place. II. YOUR LICENSE TO DEVELOP AND TO DISTRIBUTE. Detailed below, this EULA grants you three ...
Problems when installing packages in Delphi / C++ Builder arise when old or duplicate *.bpl (*.dpl) files are still located in the system path (\Windows\System or \WinNT\System32). Other causes are...
Apache Oozie Essentials starts off with the basics right from installing and configuring Oozie from source code on your Hadoop cluster to managing your complex clusters. You will learn how to create ...
He has contributed to several other Syngress publications, including Penetration Tester's Open Source Toolkit (ISBN: 1-5974490210), Stealing the Network: How to Own an Identity (ISBN: 1597490067), ...
首先,看到"Installing packages. This might take a couple of minutes."这段信息,表明系统正在尝试下载并安装所需的依赖包,包括React、ReactDOM和react-scripts,这些都是创建React应用的基本组件。`cra-...
Based on the bestselling first and second editions, Beginning Ruby, Third Edition is a leading guide to learn Ruby from the ground up. The new edition of this book provides the same excellent ...
Components realize technology to store component properties to/from settings storage such as ini files, registry etc. TMemTableEh component dataset, which hold data in memory. Its possible consider...
After installing and launching Source Insight, please select "Begin a Trial" when prompted. You do not need a serial number to run in Trial mode. If you purchase a license, you simply need to enter ...
Installing from Source The Rust build system uses a Python script called x.py to build the compiler, which manages the bootstrapping process. It lives at the root of the project. It also uses a file ...
The book covers PostgreSQL from a data architect's perspective – covering topics from installation from source to designing tables using SQL Power Architect, as well as deciding replication and ...
If you already have an older version of the TopGrid installed, first remove the old packages from Delphi before installing the new ones. Also make sure the library path no longer points to the old ...
When installing wxWidgets on Windows or OS X, we always recommend building the library from source yourself, and only provide the source package for most platforms. On some platforms, we have provided...
The book starts with basic concepts like installing PostgreSQL from source and covers theoretical aspects such as concurrency and transaction management. After this, you'll learn how to set up ...