scottwilliambeasley / debian-from-scratch Goto Github PK
View Code? Open in Web Editor NEWAn instruction manual for teaching Linux From Scratch users how to make a fully-fledged Debian system based on LFS.
An instruction manual for teaching Linux From Scratch users how to make a fully-fledged Debian system based on LFS.
It seems
sed -ri 's/(Package: libgcc1)/\1\nDescription: test\nMaintainer: test\nVersion: 2.19/' /var/lib/dpkg/status
needs to be updated. It appears to have corrupted the file /var/lib/dpkg/status
dpkg: error: parsing file '/var/lib/dpkg/status' near line 25 package 'libgcc1':
duplicate value for 'Maintainer' field
I fully agree.
Based on your input, the entries for "Maintainer" and "Version" appear to have already existed and so it does appear to have been an unnecessary change.
dpkg -i multiarch-support_2.28-10_amd64.deb dpkg -i libc6_2.28-10_amd64.deb
This was intended to be two lines in the guide - another typo.
Executing the commands in this way makes dpkg think you're trying to install another file called dpkg, which obviously doesn't exist.
Originally posted by @scottwilliambeasley in #7 (comment)
Following your guide
Then, we will need to install one package first in a partial way
dpkg - i (LOCATION_OF_libgcc1)
In return, we get this:
(Reading database ... 369 files and directories currently installed.)
Preparing to unpack libgcc1_8.3.0-6_amd64.deb ...
Unpacking libgcc1:amd64 (1:8.3.0-6) over (1:8.3.0-6) ...
dpkg: dependency problems prevent configuration of libgcc1:amd64:
libgcc1:amd64 depends on gcc-8-base (= 8.3.0-6); however:
Version of gcc-8-base:amd64 on system is 8.3.0-26.
libgcc1:amd64 depends on libc6 (>= 2.14); however:
Package libc6:amd64 is not configured yet.
dpkg: error processing package libgcc1:amd64 (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
libgcc1:amd64
So, let's try the libc deb file.
(Reading database ... 369 files and directories currently installed.)
Preparing to unpack libc6_2.28-10_amd64.deb ...
/var/lib/dpkg/tmp.ci/preinst: line 270: which: command not found
Unpacking libc6:amd64 (2.28-10) over (2.28-10) ...
dpkg: dependency problems prevent configuration of libc6:amd64:
libc6:amd64 depends on libgcc1; however:
Package libgcc1:amd64 is not configured yet.
dpkg: error processing package libc6:amd64 (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
libc6:amd64
So, I went back into LFS v9 to get libc6 (Section 6.3) installed, then did the ldconfig, then tried to install libgcc1_8.3.0-6_amd64.deb again
That did not work out, and still getting the dependency problem.
Any clues on this?
According to this manual, it states "These guides are outdated and no longer contain up-to-date information, which I intend to fix here in this manual."
It's been four years for the intended fix with an update which reflects version 9 of Linux from Scratch, and now Debian 10 which was recently released.
As indicated in the first two comments of #7 , the guide fails to indicate to the user that an error is to be expected when attempting to partially install packages.
multiarch-support depends on libc6 (>= 2.3.6-2); however:
Package libc6 is not installed.
It appears that we actually need to repeat the partial installation and tricking the database, but this time for libc6 and so that would come first before multiarch-support.
With that in mind, we would also need to reinstall libc6 as well after being able to install multiarch-support. Obviously this is something that I had missed while writing the original guide.
Originally posted by @scottwilliambeasley in #7 (comment)
The paragraph about sources.list make it clear that we will build a real Debian system (even if it is not vanilla). But the intro and the conclusion are a little ambiguous : is it an apt based system with its own repositories, a Debian-like system or a real Debian (but not vanilla) ?
I have made it quit far now in installing those .deb packages.
So, in my folder, I have some other than those initial packages, so I was unable to perform the "dpkg -i *" command.
With that, I have been figuring out the order in which I must install them.
I am now on the tar package.
As as I enter the dpkg install command, I get "Segmentation fault" as output.
So, after some tinkering, I was able to get dpkg compiled and installed without issue.
I see in the other thread you mention about a merge request.
What did you want to merge it with?
Get this error after compiling gcc-base 4.9 and partial install of libgcc1. Appears when installing multiarch and libc6, then I can't run any dpkg command without getting that error and no other output. Reboot did not help.
It seems
sed -ri 's/(Package: libgcc1)/\1\nDescription: test\nMaintainer: test\nVersion: 2.19/' /var/lib/dpkg/status
needs to be updated. It appears to have corrupted the file /var/lib/dpkg/status
dpkg: error: parsing file '/var/lib/dpkg/status' near line 25 package 'libgcc1':
duplicate value for 'Maintainer' field
Adding the contents:
Package: gcc-8-base
Status: install ok installed
Priority: required
Section: libs
Installed-Size: 250
Maintainer: Debian GCC Maintainers <[email protected]>
Architecture: amd64
Multi-Arch: same
Source: gcc-8
Version: 8.3.0-26
Breaks: gnat (<< 7), gnat-6 (<< 6.4)
Description: GCC, the GNU Compiler Collection (base package)
This package contains files common to all languages and libraries
contained in the GNU Compiler Collection (GCC).
Homepage: http://gcc.gnu.org/
Package: libgcc1
Description: test
Maintainer: test
Version: 2.19
Status: install ok unpacked
Priority: optional
Section: libs
Installed-Size: 116
Maintainer: Debian GCC Maintainers <[email protected]>
Architecture: amd64
Multi-Arch: same
Source: gcc-8 (8.3.0-6)
Version: 1:8.3.0-6
Depends: gcc-8-base (= 8.3.0-6), libc6 (>= 2.14)
Breaks: gcc-4.3 (<< 4.3.6-1), gcc-4.4 (<< 4.4.6-4), gcc-4.5 (<< 4.5.3-2)
Description: GCC support library
Shared version of the support library, a library of internal subroutines
that GCC uses to overcome shortcomings of particular machines, or
special needs for some langua
So I went in and removed the "official" Maintainer line.
Repeated:
dpkg: error: parsing file '/var/lib/dpkg/status' near line 29:
duplicate value for 'Version' field
Removed "Version: 1:8.3.0-6"
Repeated:
dpkg: error: parsing file '/var/lib/dpkg/status' near line 33 package 'libgcc1:amd64':
duplicate value for 'Description' field
So it seems the second sed command is not even needed
With all that, I am still getting the dependency problem from this line (which seems to be incorrect also).
pkg -i (location_of_multiarch) dpkg -i (location_of_libc6)
becomes
dpkg -i multiarch-support_2.28-10_amd64.deb dpkg -i libc6_2.28-10_amd64.deb
[ I have no name!@DFS]/sources
$ dpkg -i multiarch-support_2.28-10_amd64.deb dpkg -i libc6_2.28-10_amd64.deb
dpkg: error: cannot access archive 'dpkg': No such file or directory
[ I have no name!@DFS]/sources
$ dpkg -i multiarch-support_2.28-10_amd64.deb
Selecting previously unselected package multiarch-support.
(Reading database ... 20 files and directories currently installed.)
Preparing to unpack multiarch-support_2.28-10_amd64.deb ...
Unpacking multiarch-support (2.28-10) ...
dpkg: dependency problems prevent configuration of multiarch-support:
multiarch-support depends on libc6 (>= 2.3.6-2); however:
Package libc6 is not installed.
dpkg: error processing package multiarch-support (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
multiarch-support
Originally posted by @tcreek in #7 (comment)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.