net-misc/nx-x11 compiles fine with gcc 3.3.4 but fails with gcc 3.4 for more details i attached the log file of the emerge output.
Created attachment 38575 [details] log file of emerge output
Created attachment 39453 [details, diff] Patch from Fabian Franz (FreeNX-kNX Mailinglist) Attached this patch on behalf of Fabian Franz.. I didn't play aound with it yet, though. It "should work".
Created attachment 39458 [details, diff] Patch for makefile.in (nxcomp needs -fpermissive) Got some help from lauri@freenode.net/#nx Apply both patches (Makefile.in and Types.h) to build nxcomp
I'll be adding these patches shortly. In the meantime, anyone who needs them can get them from here. Best regards, Stu
Created attachment 39520 [details, diff] bug-fix and change of the name that's the types.h patch plus one line more, which has elluded probably the developers
Created attachment 39521 [details, diff] the second patch with standartised name
Created attachment 39522 [details] ...and the ebuild to apply the two patches the ebuild, which patches the sources. Ok and one more hint, everything runs, but one must start the ssh deamon. I don't if this ist the right thing to do (from security perespective of view), but that was the only thing, which worked for me, without any further modifications and actions.
*** Bug 64066 has been marked as a duplicate of this bug. ***
*** Bug 63859 has been marked as a duplicate of this bug. ***
Will this patched ebuild be integrated in the portage tree?
*** Bug 62706 has been marked as a duplicate of this bug. ***
Applying the two patches attached by Gergan Penkov, but using the current ebuild (nx-x11-1.4.0-r3) rather than the ebuild he supplied (which was an update to -r2), appears to compile correctly with gcc 3.4.3.
*** Bug 77065 has been marked as a duplicate of this bug. ***
I'm still having the problem with -r3 and gcc-3.4.1. Should I try upgrading to gcc-3.4.3-r1 and try again?
I can't advise you there. I offer support for the current stable version of gcc. I'm not in a position to offer support for non-stable versions, especially as gcc-3.3 and gcc-3.4 cannot co-exist on the same Gentoo installation AFAIK. Best regards, Stu
@stuart: > especially as gcc-3.3 and gcc-3.4 cannot co-exist on the same Gentoo installation AFAIK Why? Why do we have slotting? Why is there a command gcc-config? # gcc-config -l [1] i686-pc-linux-gnu-3.3.4 [2] i686-pc-linux-gnu-3.4.3 * [3] i686-pc-linux-gnu-3.4.3-hardened [4] i686-pc-linux-gnu-3.4.3-hardenednopie [5] i686-pc-linux-gnu-3.4.3-hardenednossp I hope, that we're getting closer to this bug. Johnny
The ABI for C++ software changed between gcc 3.3 and gcc 3.4. I'm sorry, I just don't have a machine to dedicate to gcc 3.4 at the moment. Best regards, Stu
Actually, the ebuild for gcc-3.4 has portage install sys-libs/libstdc++-v3, which allows for gcc-3.3 compiled apps to run without abi problems. There is NO problem with having a system that has both gcc-3.3 and 3.4 on it.
Created attachment 50429 [details, diff] (nx-x11-1.4.0-nxcomp.patch) patch for nxcomp fixing gcc3 compile errors (I think all attachments are obsoleted) nxcomp had really poor ANSI compliance. I actually removed the entire clear() function that the previous patches were against, since standards-compliant STL std::vector provides a working implementation. (I don't know what the calls to destroy, etc are supposed to resolve to, I don't see any functions by those names in STL.) I also updated the header names to #include <iostream> without the .h and added using namespace std. Also, a lot of -W parameters were being passed to g++ that aren't valid for c++, so they've been eliminated. I did ebuild clean unpack, applied this patch against the base, ebuild compile install package, emerge -k and tested it. I now can connect to the nxserver for the first time ever. (nxfree without nx-x11 causes problems during connect, reported as timeout on the server side and "Parse error in remote options string 'NX> '" on the client) Something is wrong with the dependencies, because the nxserver was installed previously by emerge --resume --skipfirst even though nx-x11 hadn't been installed (should I file a new bug report?). The files compile under both versions of gcc I have, now with *no* warnings (installed and tested under 3.4.3) i686-pc-linux-gnu-3.3.3 i686-pc-linux-gnu-3.4.3 I don't know why the old header files names are being used. Is this for compatibility with non-gcc compilers? Or for gcc2? If the latter, then this patch should only be applied to gcc v3 and up. It is tested and working under gcc 3.3 and 3.4 both. This sort of thing should be done by configure, but... if someone points me to a package that is a really perfect example of the right way to use autoconf and automake I'll endeavor to have the header filename selected by configure. caveat: I've never used autoconf/automake before.
This bug is fixed in the nx-comp-1.4.0-31 package. net-misc/nx-x11 now properly compiles with gcc-3.4. Reccomend closing this.
Closing bug as per Joe's suggestion. Best regards, Stu