On zaterdag 4 mei 2002 20:19, Ben Rosenberg wrote:
::It even does not require dependencies to be correct, because you can ::always --force --nodeps when installing a package. This cannot be done ::with apt4rpm. I agree APT is a very nice tool in a perfect world, but ::the world is not perfect...
Exactly. You can still download things via ftp and do what you suggest above. If SuSE were to support the APT tool outright then you wouldn't have any of the issues such as you had with java2 because SuSE would most like make their directory structure on the ftp server match what APT needs and they would write the scripts for deps checking that you and others now have to configure manually. It's a chicken and the egg situation.
In this particular case APT becomes unusable :( In case you would install java2 via rpm, APT would not work anymore after that, as APT will always complain about unmet dependencies and quit... The case is interesting: [final question: Can the incorrect dependency happen, because java2 has been build with an older version of unixODBC????] # apt-get install java2 ..... java2: Depends: libodbc.so but it is not installable Depends: libodbcinst.so but it is not installable Installed are: rbos@dar:/usr/lib> ll libodbc.so* lrwxrwxrwx 1 root root 16 Oct 20 2001 libodbc.so -> libodbc.so.1.0.0 lrwxrwxrwx 1 root root 16 Oct 20 2001 libodbc.so.1 -> libodbc.so.1.0.0 -rwxr-xr-x 1 root root 385423 Sep 24 2001 libodbc.so.1.0.0 rbos@dar:/usr/lib> ll libodbcinst.so* lrwxrwxrwx 1 root root 20 Oct 20 2001 libodbcinst.so -> libodbcinst.so.1.0.0 lrwxrwxrwx 1 root root 20 Oct 20 2001 libodbcinst.so.1 -> libodbcinst.so.1.0.0 -rwxr-xr-x 1 root root 65960 Sep 24 2001 libodbcinst.so.1.0.0 Which is done by: rbos@dar:/usr/lib> rpm -qf /usr/lib/libodbc.so /usr/lib/libodbcinst.so unixODBC-2.0.5-109 unixODBC-2.0.5-109 unixoDBC provides: apt-cache show unixODBC | grep Prov | tr " " "\n" | sort libodbc.so.1, libodbcinst.so.1, etc Now clearly there is a mismatch between what java2 requests and unixODBC provides :( I created my own unixODBC-addon spec file, that should provide the missing libs: # /usr/lib: cp libodbcinst.so.1.0.0 .../unixODBC-addon/libodbcinst.so cp libodbc.so.1.0.0 .../unixODBC-addon/libodbc.so tar czf <tarfile> .../unixODBC-addon Run rpm to create the packages, which is giving the following info: Processing files: unixODBC-apt-addon-1.0-1 Finding Provides: (using /usr/lib/rpm/find-provides)... Finding Requires: (using /usr/lib/rpm/find-requires)... ===>>> Provides: libodbc.so.1 libodbcinst.so.1 Requires... The *.so files are being recognized as *.so.1 files by rpm ... I now looked into the java2.spec file, there is no reference to unixODBC or whatsoever. So after building, rpm is finding the dependencies. In that state it probably determined that it is dependend on *.so instead of *.so.1 I don't want to build the 22MB java2 beast on my own system, so I can't figure out. Can the incorrect dependency happen, because java2 has been build with an older version of unixODBC???? -- Richard Bos For those without home the journey is endless