-
Notifications
You must be signed in to change notification settings - Fork 49
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Circular Dependency Problem (Working on updated guide) #7
Comments
That's actually normal, given what you are trying to do. You are unpacking/installing the package in a partial state and can't expect to completely install it without bumping into said dependency issue. It's a pretty lame dependency issue that forces you to hack around with the dpkg database to overcome. You can't fully install the package using dpkg currently - the best that you will be able to do is have the package installed, but left in a partial / unconfigured state. The dpkg database would show that that's the state the package is in if you query it. In this case, you should proceed with the Now that you have that dependency, you should be able to proceed to install the other parts of the circular dependency tree. Once you've installed the other parts, reinstall libgcc as per the guide to ensure that everything's set up properly. This looks like another opportunity for clarifying the language within the guide. To me this seemed rather obvious, but to others using the guide clearly it leaves some room for confusion. Also, please be careful when attempting to pulling parts from more recent versions of Debian or LFS. You may encounter packages which require very specific versions of other libraries/dependencies not included in this guide, or these may have modified dependency trees that look very different to what you see currently in the guide. In those cases, you'd have to figure those out yourself. It's pretty easy though - when dpkg complains, it usually tells you exactly what it's looking for, and you just need to map those out. |
Okay got you. Your guide did not explicitly say one would get an error when trying to install. One other issue is the command you placed in there.
Specifically you have "Version: 2.19" What is that referring to? I am not seeing anything with version 2.19 elsewhere. I just want make sure I am clear on this. Thanks for all the help so far, |
EDIT: There doesn't seem to be a version in the Jessie repos matching this. I must have just made up a value for this during the time that I figured out how to do this. The value shouldn't be terribly important as long as it satisfies the version required by the other packages in the circular dependency chain. Remember, what you're trying to do is essentially force dpkg into giving you the ability to install the other packages in the chain fully. |
It seems
needs to be updated. It appears to have corrupted the file /var/lib/dpkg/status
Adding the contents:
So I went in and removed the "official" Maintainer line. Repeated:
Removed "Version: 1:8.3.0-6" Repeated: dpkg: error: parsing file '/var/lib/dpkg/status' near line 33 package 'libgcc1:amd64': 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).
becomes
|
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.
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.
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. I'll be going through some of these typos shortly, creating an issue and then creating new commits to the This would make your pull request obsolete and so a rebase will have to be done - I'll work with you on that later on. |
Looking forward to that.
My pull request actually fixes everything to enable at least get the first package installed, but yes, I see your point if you made those changes |
Following your guide
In return, we get this:
So, let's try the libc deb file.
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?
The text was updated successfully, but these errors were encountered: