You are not logged in.

#1 2012-03-13 21:17:05

stefano
Member
Registered: 2011-04-09
Posts: 258

player (Robotic server) does not install from AUR

The player robotic server available on AUR fails installation with:

builds/player/src/player-3.0.2/server/drivers/shell/readlog.cc:668:43: error: cannot convert ‘FILE* {aka _IO_FILE*}’ to ‘gzFile’ for argument ‘1’ to ‘off_t gzseek(gzFile, off_t, int)’
builds/player/src/player-3.0.2/server/drivers/shell/readlog.cc:714:62: error: cannot convert ‘FILE* {aka _IO_FILE*}’ to ‘gzFile’ for argument ‘1’ to ‘char* gzgets(gzFile, char*, int)’


From this thread about the failed installation of a different package (Pixie) it looks like it is an error related to the zlib version:   https://bbs.archlinux.org/viewtopic.php?id=136269

The thread mentions how to fix the issue for Pixie, but I don't know how to replicate the solution for player. The offending lines are:

668        ret = gzseek(this->file,0,SEEK_SET);

and

714        ret = (gzgets(this->file, this->line, this->line_size) == NULL);


can anyone help?

Cheers,

Stefano



UPDATE: after visiting the zlib webpage I tried a different tack: downgrading zlib from 1.2.6 to 1.2.5. PLayer now compiles, but it fails at the linking stage with:

/usr/lib/libxine.so.2: undefined reference to `gzgetc_@ZLIB_1.2.5.2'

Last edited by stefano (2012-03-13 21:39:32)

Offline

#2 2012-03-17 15:14:08

stefano
Member
Registered: 2011-04-09
Posts: 258

Re: player (Robotic server) does not install from AUR

ALMOST SOLVED:

the file player/src/player-3.0.2/server/drivers/shell/readlog.cc must be changed as follows:

line 668
-              ret = gzseek(this->file,0,SEEK_SET);
+            ret = gzseek((gzFile)this->file,0,SEEK_SET);

line 714
-        ret = (gzgets(this->file, this->line, this->line_size) == NULL);
+      ret = (gzgets((gzFile)this->file, this->line, this->line_size) == NULL);


Now, can anyone tell me how to convince makepkg to use the fixed file instead of the original one?

Offline

#3 2012-03-17 16:51:12

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,911

Re: player (Robotic server) does not install from AUR

You can use sed to change the content of readlog.cc , or you could create a diff-fille and use the patch command.

for 2 small changes, i'd use sed.

http://www.grymoire.com/Unix/Sed.html#uh-1


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

Board footer

Powered by FluxBB