http://www.perlmonks.org?node_id=1001359


in reply to Perl QtCore4 won't install

That distro is outdated. Check out code from the official repository instead. You didn't say what version of Qt you are running, so I'm linking to the main branch.

As with any C-library, you need the appropriate header files from the packages libsmokeqt-devel and libqt4-devel at the least. These are the OpenSUSE names, you need to figure out the debianised equivalents yourself.

Replies are listed 'Best First'.
Re^2: Perl QtCore4 won't install
by PoliceCoP (Acolyte) on Oct 29, 2012 at 22:34 UTC

    Thanks daxim. I'm not sure I understand how qtcore4-0.99.0 is an older version than qtcore4-0.96.0. Or were you referring to another library? I have installed the debian packages (libqt4-dev, libsmokeqt4-dev) and loads more I have qt 4.8.2 installed. From here when I try

     cpan QtCore4

    it tries to build smokeqt I think, and fails here:

    Scanning dependencies of target perlqtcore4 [ 68%] Building CXX object qtcore/src/CMakeFiles/perlqtcore4.dir/bindi +ng.cpp.o [ 68%] Building CXX object qtcore/src/CMakeFiles/perlqtcore4.dir/handl +ers.cpp.o [ 69%] Building CXX object qtcore/src/CMakeFiles/perlqtcore4.dir/marsh +all_types.cpp.o [ 69%] Building CXX object qtcore/src/CMakeFiles/perlqtcore4.dir/util. +cpp.o /home/sillymoose/.cpan/build/Qt4-0.99.0-sLJsAg/qtcore/src/util.cpp: In + function ‘void XS_signal(CV*)’: /home/sillymoose/.cpan/build/Qt4-0.99.0-sLJsAg/qtcore/src/util.cpp:238 +5:110: warning: format ‘%lu’ expects argument of type ‘long unsigned +int’, but argument 3 has type ‘line_t {aka unsigned int}’ [-Wformat] [ 70%] Building CXX object qtcore/src/CMakeFiles/perlqtcore4.dir/QtCor +e4.c.o QtCore4.xs: In function ‘void XS_Qt___internal_sv_obj_info(CV*)’: QtCore4.xs:403:9: warning: format ‘%x’ expects argument of type ‘unsig +ned int’, but argument 2 has type ‘IV {aka long int}’ [-Wformat] Linking CXX shared library ../../blib/arch/auto/QtCore4/QtCore4.so /usr/bin/ld: /home/sillymoose/perl5/perlbrew/perls/perl-5.14.2/lib/5.1 +4.2/x86_64-linux/CORE/libperl.a(op.o): relocation R_X86_64_32S agains +t `PL_sv_yes' can not be used when making a shared object; recompile +with -fPIC /home/sillymoose/perl5/perlbrew/perls/perl-5.14.2/lib/5.14.2/x86_64-li +nux/CORE/libperl.a: could not read symbols: Bad value collect2: ld returned 1 exit status make[2]: *** [blib/arch/auto/QtCore4/QtCore4.so] Error 1 make[1]: *** [qtcore/src/CMakeFiles/perlqtcore4.dir/all] Error 2 make: *** [all] Error 2

    what do you think? Thanks again.