qucs and Suse 11.4

A while ago I used “qucs” on an early Suse 11.x system. It worked fine.

Now I ran into a problem that could nicely be solved with a qucs simulation. So I wanted to install it.
However I did not find a package for 11.4/32bit nor did I find any traces of one being under construction.

So I tried to compile Rev 0.16 but without success. After installation of a lot of missing Qt stuff which apparently helped
the compiler to proceed a bit further, the run ended in a dead end road - at least for me.

So here are my questions:

Is there a killing situation that makes 11.4 and qucs incompatible?

Has anybody here successfully installed qucs on 11.4/32bit?

Is there a package under construction and expected to be working soon?

Any help is appreciated…

When all the QT stuff is available it compiles just fine (on 11.3) to the point where the following happens:

spfile.cpp:413:34: error: call of overloaded 'conj(nr_complex_t)' is ambiguous
/usr/include/c++/4.5/complex:667:33: note: candidates are: std::complex<_Tp> std::conj(const std::complex<_Tp>&) [with _Tp = double]
/usr/include/c++/4.5/tr1/complex:62:5: note:                 std::complex<_Tp> std::tr1::conj(const std::complex<_Tp>&) [with _Tp = double]
/usr/include/c++/4.5/tr1/complex:67:5: note:                 std::complex<typename __gnu_cxx::__promote<_Tp>::__type> std::tr1::conj(_Tp) [with _Tp = std::complex<double>, typename __gnu_cxx::__promote<_Tp>::__type = std::complex<double>]
spfile.cpp: In member function 'double spfile::noiseFigure(matrix, matrix, double&, nr_complex_t&, double&)':
spfile.cpp:425:63: error: call of overloaded 'conj(nr_complex_t)' is ambiguous
/usr/include/c++/4.5/complex:667:33: note: candidates are: std::complex<_Tp> std::conj(const std::complex<_Tp>&) [with _Tp = double]
/usr/include/c++/4.5/tr1/complex:62:5: note:                 std::complex<_Tp> std::tr1::conj(const std::complex<_Tp>&) [with _Tp = double]
/usr/include/c++/4.5/tr1/complex:67:5: note:                 std::complex<typename __gnu_cxx::__promote<_Tp>::__type> std::tr1::conj(_Tp) [with _Tp = std::complex<double>, typename __gnu_cxx::__promote<_Tp>::__type = std::complex<double>]
spfile.cpp:443:58: error: call of overloaded 'conj(std::complex<double>)' is ambiguous
/usr/include/c++/4.5/complex:667:33: note: candidates are: std::complex<_Tp> std::conj(const std::complex<_Tp>&) [with _Tp = double]
/usr/include/c++/4.5/tr1/complex:62:5: note:                 std::complex<_Tp> std::tr1::conj(const std::complex<_Tp>&) [with _Tp = double]
/usr/include/c++/4.5/tr1/complex:67:5: note:                 std::complex<typename __gnu_cxx::__promote<_Tp>::__type> std::tr1::conj(_Tp) [with _Tp = std::complex<double>, typename __gnu_cxx::__promote<_Tp>::__type = std::complex<double>]
make[6]: *** [spfile.o] Error 1

This looks like a bug in the source code. Consider to report it upstream to have it fixed. This exceeds my C++ skills.

Hi vodoo,

thank you for your answer.

What I saw in the sourceforge forum so far is not very promising. The package maintainer for Fedora reported compilation problems (I don’t know if those are identical) and the answers as well as the response times are not really satisfying. The qucs crew seems to run at their capacity limits and probably will not have time to investigate compilation problems on various platforms.

So the package maintainer at Suse might be to only one to troubleshoot this.

Does anybody know who that might be?

On 07/17/2011 03:36 AM, warp2 wrote:
>
> A while ago I used “qucs” on an early Suse 11.x system. It worked fine.
>
> Now I ran into a problem that could nicely be solved with a qucs
> simulation. So I wanted to install it.
> However I did not find a package for 11.4/32bit nor did I find any
> traces of one being under construction.
>
> So I tried to compile Rev 0.16 but without success. After installation
> of a lot of missing Qt stuff which apparently helped
> the compiler to proceed a bit further, the run ended in a dead end road
> - at least for me.
>
> So here are my questions:
>
> Is there a killing situation that makes 11.4 and qucs incompatible?
>
> Has anybody here successfully installed qucs on 11.4/32bit?
>
> Is there a package under construction and expected to be working soon?
>
> Any help is appreciated…
>
>
I was able to install the package qucs-0.0.16-2.1.x86_64.rpm from

http://software.opensuse.org/search?q=qucs&baseproject=SUSE%3ASLE-11&lang=en

There is also an i586 package available from the same site. The x86_64
loads up on my machine but I have not tested it any further yet. I hope
this helps you.

Eric

On 07/17/2011 03:36 AM, warp2 wrote:
>
> A while ago I used “qucs” on an early Suse 11.x system. It worked fine.
>
> Now I ran into a problem that could nicely be solved with a qucs
> simulation. So I wanted to install it.
> However I did not find a package for 11.4/32bit nor did I find any
> traces of one being under construction.
>
> So I tried to compile Rev 0.16 but without success. After installation
> of a lot of missing Qt stuff which apparently helped
> the compiler to proceed a bit further, the run ended in a dead end road
> - at least for me.
>
> So here are my questions:
>
> Is there a killing situation that makes 11.4 and qucs incompatible?
>
> Has anybody here successfully installed qucs on 11.4/32bit?
>
> Is there a package under construction and expected to be working soon?
>
> Any help is appreciated…
>
>
I was able to install the package qucs-0.0.16-2.1.x86_64.rpm from

http://software.opensuse.org/search?q=qucs&baseproject=SUSE%3ASLE-11&lang=en

There is also an i586 package available from the same site. I am
running openSUSE 11.3 though and the package shows up when searching for
SUSE SLE-11. The x86_64 version loads up on my machine but I have not
tested it any further yet. I hope this helps you.

Eric

I too have had the same problems in attempting to compile qucs 0.0.16 on openSUSE 12.1 (gcc 4.6.2).

It seems that after having to install the missing Qt headers, I encountered the same list of make errors that vodoo has outlined above.

An examination of the error messages reveals that there are several different versions of a “complex” function described in the installed C++ library header files.

While I don’t work with C++, it seems that rather than there being something missing, in this case, there is too much choice!

Ideally, some way to tell the compiler exactly which of the available multiplicity of function prototypes to use in needed BUT, a crude and simple workaround is to hide the tr1 compliant C++ headers from the compiler until the ‘make’ is finished and un-hide them.

In my case, this was achieved by renaming the /usr/include/c++/4.6/tr1 directory to /usr/include/c++/4.6/.tr1 , which hides the tr1 directory from the compiler. (Note the dot immediately prior to tr1!)

From the unpacked qucs-0.0.16, perform the usual:
./configure
make
make install
then un-hide the tr1 directory by renaming /usr/include/c++/4.6/.tr1 directory to /usr/include/c++/4.6/tr1
This puts your C++ library system back as it was before.

I now have a perfectly functioning qucs 0.0.16 on openSUSE 12.1