|
Bugzilla – Full Text Bug Listing |
| Summary: | encfs: all broken, refuses to mount | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE 11.0 | Reporter: | Jan Engelhardt <jengelh> |
| Component: | Basesystem | Assignee: | Philipp Thomas <pth> |
| Status: | VERIFIED FIXED | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Blocker | ||
| Priority: | P5 - None | CC: | dmueller, forgotten_sLJ7K2dvxj, forgotten_UzoFN9Q9Tb, gull, hmuelle, meissner, tiwai, tuukka.pasanen |
| Version: | Final | ||
| Target Milestone: | --- | ||
| Hardware: | x86 | ||
| OS: | Linux | ||
| Whiteboard: | maint:running:21173 maint:released:11.0:21176 | ||
| Found By: | Customer | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
|
Description
Jan Engelhardt
2008-07-28 09:49:19 UTC
I can has comment? I just came to report the same thing, as it has been reported to me by an end-user. Strange thing is that encfs 1.4.x has been developed against boost 1.34.1 on Ubuntu, so I'm surprised to get reports of it failing with boost 1.34.1 on OpenSuse. I installed OpenSuse 11 onto a virtual machine and the behavior is easy to reproduce. Boost 1.34.1 doesn't appear compatible with gcc 4.3.1. I built Boost 1.35 on OpenSuse 11 and recompiled encfs and it works as expected. Encfs also works with 1.34.1 and gcc 4.2.3. Likely that other programs which use boost on OpenSuse 11 will also be broken. I'm informing users that this is a Suse issue, not encfs.. How to build with boost 1.35: 1. Download boost: http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=587936 2. can save time by only building filesystem and serialization libraries: ./configure --with-libraries=filesystem,serialization make sudo make install (installs to /usr/local by default) 3. build encfs, point to boost installation ./configure --with-boost=/usr/local make I think it's actually a specific problem with the OpenSuSE build of boost 1.34.1, not a gcc 4.3 problem. I built boost 1.34.1 and added it to LD_LIBRARY_PATH, and was able to get OpenSuSE's encfs binary to work without rebuilding. So it looks like a problem with the boost package, as opposed to boost itself. Philipp, do you have any ide what could be causing this? No, at the moment I'm at a loss. But I have a hunch :) @David: I assume you did compile boost from the source tarball and not from our .src.rpm, right? Then I guess there is a problem with boost as we override the compiler options to get the standard SUSE compiler flags used. I will test it but probabbly not this week. I'll take over the bug at least until I've verified my suspicions. Yes, I compiled from the 1.34.1 source tarball. I haven't tried doing it from the source RPM. BTW, this only affects encfs 1.4.x filesystems -- ones with a .encfs6 configuration file. Filesystems created with encfs 1.3.x, with an .encfs5 config file, work fine. I think this is because they use different config file formats. *** Bug 424342 has been marked as a duplicate of this bug. *** The bug is still present on openSUSE 11.1-beta1. FYI, I rebuilt SUSE boost package but with BJAM_TARGET=release instead of =rpm, and this works fine with the existing SUSE encfs.rpm. More info: it seems that compiling with -DNDEBUG as release fixes the problem. So, it can be either a bogus assert() check or the code works just coincidentally. That is, I did something like:
--- boost-use_rpm_optflags.patch 2008-01-15 18:44:05.000000000 +0100
+++ boost-use_rpm_optflags.patch 2008-09-30 18:57:58.000000000 +0200
@@ -22,7 +22,7 @@ variant release : <optimization>speed <debug-symbols>off <inlining>full
<runtime-debugging>off <define>NDEBUG ;
variant profile : release : <profiling>on <debug-symbols>on ;
-+variant rpm : <optimization>rpm <debug-symbols>rpm <inlining>full <runtime-debugging>off ;
++variant rpm : <optimization>rpm <debug-symbols>rpm <inlining>full <runtime-debugging>off <define>NDEBUG ;
class searched-lib-target : abstract-file-target
{
OK, I'll check this again when I move boost 1.36 from beta to stable. So 10.3 is not gonna get fixed? For 11.0? Try boost package on OBS home:iwai repo. Just to echo the comments above: rebuilding Boost did fix my encfs issue. I thought I had commented on this bug before, but I was mistaken. Yeah I 11.0 not 10.3... works fine, please push to updates. Correction: it's home:tiwai repo.
http://download.opensuse.org/repositories/home:/tiwai/
boost 1.36 has been checked into STABLE on the weekend. This should then fix the issue. As soon as the new boost is available please check and mark as verified or reopen the bug. I can confirm that the bug is fixed using the version in the home:tiwai repo. How soon will this go to the update mirrors? ping The issue isn't FIXED at all. - No official update package for 11.0 boost - 11.1-beta4 boost breaks encfs totally OK, encfs seems getting built, and working with boost-1.36, as far as I built locally. So, 11.1 rc1 will be likely OK. But, please keep this opening at least it's certainly fixed on 11.1-rc1. >- No official update package for 11.0 boost
So make one. It's amazing how many bugs like this remain and are either only fixed in the next release or entirely shoveled into the future.
I agree; This is a killer feature and it means that effectively it is useless in OpenSUSE 11. Upgrading to 11.1 is not an option for many (specially since it has not been released yet). It's up to project management to decide whether a fixed boost package should be released for 11.0. Coolo, should we do it? has anyone actually investigated what the real problem is? It's nice that -DNDEBUG fixes this particular application but it might break a completely different one. it should be pretty easy to figure out which codepath that is #ifdef'ed by NDEBUG is causing the problem We might not! -DNDEBUG is the default for for boost and it's only missing in out boost because we use an own build target and that lacks the definition. Boost packages compiled with -NDEBUG were submitted. This should fix the issue with encfs once they're released. update is now in the testrepo and seems to work fine. please also test. (test repo is additional repo: http://download.opensuse.org/update/11.0-test/ ) Update released for: openSUSE 11.0 (debug, i386, ppc, ppc64, x86_64) But this change has not been pushed to 11.1, or is boost 1.36 not affected? boost-1.36 works fine as is. I changed the way boost 1.36 is configured at build time so it automatically uses the standard compiler options :) Compare the .spec files for both boost versions and you'll see. |