LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware - ARM (https://www.linuxquestions.org/questions/slackware-arm-108/)
-   -   Help compiling splix on an old 14.1 (https://www.linuxquestions.org/questions/slackware-arm-108/help-compiling-splix-on-an-old-14-1-a-4175589665/)

louigi600 09-18-2016 08:44 AM

Help compiling splix on an old 14.1
 
I know I should be upgrading to 14.2 ... but the printserver runs on a old plug devices derived thing that cannot run Slackwarearm 14.2.
I've already sorted out jbig (or at least I think I have).
Now I'm using splix 2.0.0 sources and this slackbuild as a baseline for compiling it.

I get this error tough:
Code:

root@ac100:/usr/src/splix-2.0.0# find -L . \
>  \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
>  -o -perm 511 \) -exec chmod 755 {} \; -o \
>  \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
>  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
root@ac100:/usr/src/splix-2.0.0#
root@ac100:/usr/src/splix-2.0.0# sed -i "s%\`cups-config --cflags\`%$CUPSCFLAGS%" module.mk
root@ac100:/usr/src/splix-2.0.0# sed -i "s%\`cups-config --ldflags\`%$CUPSLDFLAGS%" module.mk
root@ac100:/usr/src/splix-2.0.0# sed -i "s%\`cups-config --libs\`%$CUPSLIBS%" module.mk
root@ac100:/usr/src/splix-2.0.0# sed -i "s%\`cups-config --serverbin\`%$CUPSSERVERBIN%" module.mk
root@ac100:/usr/src/splix-2.0.0# sed -i "s%\`cups-config --datadir\`%$CUPSDATADIR%" module.mk
root@ac100:/usr/src/splix-2.0.0#
root@ac100:/usr/src/splix-2.0.0# sed -i 's#const PPDFile::Value::Value #const PPDFile::Value #' src/ppdfile.cpp
root@ac100:/usr/src/splix-2.0.0# make
    GEN              .defs.mk..
 +---------------------------------------------+
 |      COMPILATION PARAMETERS SUMMARY        |
 +---------------------------------------------+
 |      THREADS    =  enabled                |
 |      THREADS Nr  =        2                |
 |      CACHESIZE  =      30                |
 |      JBIG        =  enabled                |
 |      BLACK OPTIM =  enabled                |
 +---------------------------------------------+
 (Do a "make clean" before updating these values)

    CXX              src/rastertoqpdl.cpp
    CXX              src/request.cpp
    CXX              src/printer.cpp
    CXX              src/qpdl.cpp
src/qpdl.cpp: In function 'bool _renderBand(const Request&, const Band*, bool)':
src/qpdl.cpp:115:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
                    *(uint32_t *)&header = (uint32_t)(0x09ABCDEF +
                                  ^
    CXX              src/document.cpp
src/document.cpp: In member function 'Page* Document::getNextRawPage(const Request&)':
src/document.cpp:84:10: warning: 'unsigned int cupsRasterReadHeader(cups_raster_t*, cups_page_header_t*)' is deprecated (declared at /usr/include/cups/raster.h:370) [-Wdeprecated-declarations]
    if (!cupsRasterReadHeader(_raster, &header) || !header.cupsBytesPerLine ||
          ^
src/document.cpp:84:47: warning: 'unsigned int cupsRasterReadHeader(cups_raster_t*, cups_page_header_t*)' is deprecated (declared at /usr/include/cups/raster.h:370) [-Wdeprecated-declarations]
    if (!cupsRasterReadHeader(_raster, &header) || !header.cupsBytesPerLine ||
                                              ^
    CXX              src/core.cpp
    CXX              src/compress.cpp
    CXX              src/algorithm.cpp
    CXX              src/ppdfile.cpp
    CXX              src/page.cpp
    CXX              src/colors.cpp
    CXX              src/band.cpp
    CXX              src/bandplane.cpp
    CXX              src/cache.cpp
    CXX              src/rendering.cpp
    CXX              src/semaphore.cpp
    CXX              src/algo0x0d.cpp
    CXX              src/algo0x0e.cpp
    CXX              src/algo0x11.cpp
    CXX              src/algo0x13.cpp
    LINK              optimized/rastertoqpdl
/usr/lib/gcc/arm-slackware-linux-gnueabi/4.8.4/../../../../arm-slackware-linux-gnueabi/bin/ld: optimized/src/cache.o: undefined reference to symbol 'pthread_join@@GLIBC_2.4'
/usr/lib/gcc/arm-slackware-linux-gnueabi/4.8.4/../../../../arm-slackware-linux-gnueabi/bin/ld: note: 'pthread_join@@GLIBC_2.4' is defined in DSO /lib/libpthread.so.0 so try adding it to the linker command line
/lib/libpthread.so.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make: *** [optimized/rastertoqpdl] Error 1
root@ac100:/usr/src/splix-2.0.0#

with a little more careful tinkering I got this:
Code:

/usr/lib/gcc/arm-slackware-linux-gnueabi/4.8.4/../../../../arm-slackware-linux-gnueabi/bin/ld: cannot find -lssl
/usr/lib/gcc/arm-slackware-linux-gnueabi/4.8.4/../../../../arm-slackware-linux-gnueabi/bin/ld: cannot find -lcrypto
/usr/lib/gcc/arm-slackware-linux-gnueabi/4.8.4/../../../../arm-slackware-linux-gnueabi/bin/ld: cannot find -lz

I'm probabbly missing libs openssl and what else ?

louigi600 09-18-2016 09:00 AM

Sorry for making a racket ... I was just missing openssl and zlib.

drmozes 09-18-2016 03:07 PM

Quote:

Originally Posted by louigi600 (Post 5606860)
I know I should be upgrading to 14.2 ... but the printserver runs on a old plug devices derived thing that cannot run Slackwarearm 14.2.

Why can't it? No support was removed from 14.2, only the QEMU emulated system changed which isn't relevant for you.

louigi600 09-19-2016 01:40 AM

Sorry I missed that 14.2 is softfloat and current is hardfloat ... I thaught that 14.2 was the hardfloat port and I'm sure that you can't run the hardfloat port on the kirkwood soc. I will update some of my arm devices to 14.2 having learned that it's still softfloat.

There is however an issue: 14.2 comes with cups 2.1 and you apparently can't send prerendered printjobs from cups 2.1 (well via ipp for sure not sure jetdirect or lpd) to a printserver.
This is a pain in the butt because rendering on a kirkwood soc with 128Mb of ram takes for ever. I sorted the splix compiling issues and I tried printing the test pege but I think it may still be processing from yesterday.

I might do a little work to rollback to cups 1.5 on my 14.2 installations (well at least for the ones that will be print clients).

louigi600 09-20-2016 09:30 AM

Anybody know how to figure out deps for getting texttopdf to work ?

I get this eror:
Code:

D [20/Sep/2016:14:47:12 +0100] [Job 13] No viable font found
D [20/Sep/2016:14:47:12 +0100] [Job 13] Set job-printer-state-message to "Ignored bad font \"monospace\"", current level=WARN
D [20/Sep/2016:14:47:12 +0100] [Job 13] No viable font found
D [20/Sep/2016:14:47:12 +0100] [Job 13] Set job-printer-state-message to "No usable font available", current level=ERROR
D [20/Sep/2016:14:47:12 +0100] [Job 13] PID 18106 (/usr/lib/cups/filter/texttopdf) stopped with status 1.

Damn it if I do it manually it works
Code:

root@slackware:~#  /usr/lib/cups/filter/texttopdf 1 me '' 1 '' </etc/passwd >texttopdf.pdf
DEBUG: Page = 595x842; 12,12 to 583,830
root@slackware:~# echo $?
0
root@slackware:~#  /usr/lib/cups/filter/texttopdf 1 me '' 1 '' </etc/passwd >texttopdf.pdf
DEBUG: Page = 595x842; 12,12 to 583,830
root@slackware:~# echo $?
0
root@slackware:~# /usr/lib/cups/filter/pdftopdf  1 me '' 1 '' <texttopdf.pdf > pdf2pdf.pdf
DEBUG: pdftopdf: No FINAL_CONTENT_TYPE environment variable, could not determine whether to log pages or not, so turned off page logging.
DEBUG: pdftopdf: Last filter determined by the PPD: None; FINAL_CONTENT_TYPE: (null) => pdftopdf will not log pages in page_log.
root@slackware:~# echo $?
0
root@slackware:~# /usr/lib/cups/filter/pdftops  1 me '' 1 '' < pdf2pdf.pdf > pdf2ps.ps
DEBUG: pdftops - copying to temp print file "/tmp/0040500059df4"
DEBUG: Printer make and model: Generic PostScript Printer
DEBUG: Running command line for pstops: pstops 1 me  1
DEBUG: No resolution information found in the PPD file.
DEBUG: Using image rendering resolution 300 dpi
DEBUG: Running command line for gs: gs -q -dNOPAUSE -dBATCH -dSAFER -sDEVICE=ps2write -sOUTPUTFILE=%stdout -dLanguageLevel=2 -r300 -dCompressFonts=false -dNoT3CCITT -dNOINTERPOLATE -c 'save pop' -f /tmp/0040500059df4
DEBUG: Started filter gs (PID 1030)
DEBUG: Started filter pstops (PID 1031)
DEBUG: Page = 595x842; 12,12 to 583,830
DEBUG: slow_collate=0, slow_duplex=0, slow_order=0
DEBUG: Before copy_comments - %!PS-Adobe-3.0
DEBUG: %!PS-Adobe-3.0
DEBUG: %%BoundingBox: 0 0 595 842
DEBUG: %%HiResBoundingBox: 0 0 595.00 842.00
DEBUG: %%Creator: GPL Ghostscript 919 (ps2write)
DEBUG: %%LanguageLevel: 2
DEBUG: %%CreationDate: D:19700101043441+01'00'
DEBUG: %%Pages: 1
DEBUG: %%EndComments
DEBUG: Before copy_prolog - %%BeginProlog
DEBUG: Before copy_setup - %%Page: 1 1
DEBUG: Before page loop - %%Page: 1 1
DEBUG: Copying page 1...
PAGE: 1 1
DEBUG: pagew = 571.0, pagel = 818.0
DEBUG: bboxx = 0, bboxy = 0, bboxw = 595, bboxl = 842
DEBUG: PageLeft = 12.0, PageRight = 583.0
DEBUG: PageTop = 830.0, PageBottom = 12.0
DEBUG: PageWidth = 595.0, PageLength = 842.0
DEBUG: Wrote 1 pages...
DEBUG: PID 1031 (pstops) exited with no errors.
DEBUG: PID 1030 (gs) exited with no errors.
root@slackware:~# echo $?
0
root@slackware:~#

I can see the ps file is fine with gv. Why do I get "PID 18106 (/usr/lib/cups/filter/texttopdf) stopped with status 1." and why does the printer print a blank page (toner is fine) ?
As you can see above I ran manually all the filters and none exited with 1 !
What's up ?


All times are GMT -5. The time now is 06:04 PM.