Couple of Solaris bugs.

Eric Bautsch eric.bautsch at pobox.com
Tue Mar 6 16:02:34 CET 2001


Hi all.

I'm not on the list but couldn't find anywhere else to send this to...
I'm compiling vlc-0.2.63 on Solaris 8, x86.
I'm a sys admin, not a programmer.

bautsche at jupiter > ./configure --prefix=/opt/EABvlc-0.2.63
bautsche at jupiter > make
[...]
gcc -DSYS_solAris2_8 -Iinclude -I/usr/local/include -I/usr/X11R6/include -Wall -Winline -D_REENTRANT -D_GNU_SOURCE -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=pentium -mcpu=pentium -c -o src/video_parser/vpar_synchro.o src/video_parser/vpar_synchro.c
src/video_parser/vpar_synchro.c:449: conflicting types for `vpar_SynchroNewPicture'
src/video_parser/../video_decoder/vpar_synchro.h:102: previous declaration of `vpar_SynchroNewPicture'
make: *** [src/video_parser/vpar_synchro.o] Error 1
bautsche at jupiter > 

Fixed this by changing the type of b_repeat_field to int in
src/video_decoder/vpar_synchro.h:102
(whether or not this is a valid thing to do.....)


Then I'm failing here:
gcc -DSYS_solAris2_8 -Iinclude -I/usr/local/include -I/usr/X11R6/include -Wall -Winline -D_REENTRANT -D_GNU_SOURCE -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=pentium -mcpu=pentium -ldl -lsocket -lnsl -lpthread -lm -Wall --export-dynamic -rdynamic -o vlc src/interface/main.o src/interface/interface.o src/interface/intf_msg.o src/interface/intf_cmd.o src/interface/intf_ctrl.o src/interface/intf_plst.o src/interface/intf_channels.o src/interface/intf_console.o src/input/input_ext-dec.o src/input/input_ext-intf.o src/input/input_dec.o src/input/input_programs.o src/input/input_netlist.o src/input/input_clock.o src/input/input.o src/input/mpeg_system.o src/video_output/video_output.o src/video_output/video_text.o src/video_output/video_spu.o src/video_output/video_yuv.o src/audio_output/audio_output.o src/ac3_decoder/ac3_decoder_thread.o src/ac3_decoder/ac3_decoder.o src/ac3_decoder/ac3_parse.o src/ac3_decoder/ac3_exponent.o src/ac3_decoder/ac3_bit_allocate.o src/ac3_decoder/ac3_mantissa.o src/ac3_decoder/ac3_rematrix.o src/ac3_decoder/ac3_imdct.o src/ac3_decoder/ac3_downmix.o src/ac3_decoder/ac3_downmix_c.o src/lpcm_decoder/lpcm_decoder_thread.o src/lpcm_decoder/lpcm_decoder.o src/audio_decoder/audio_decoder.o src/audio_decoder/adec_generic.o src/audio_decoder/adec_layer1.o src/audio_decoder/adec_layer2.o src/audio_decoder/adec_math.o src/spu_decoder/spu_decoder.o  src/video_parser/video_parser.o src/video_parser/vpar_headers.o src/video_parser/vpar_blocks.o src/video_parser/vpar_synchro.o src/video_parser/video_fifo.o src/video_decoder/video_decoder.o src/misc/mtime.o src/misc/tests.o src/misc/rsc_files.o src/misc/modules.o src/misc/netutils.o  
gcc: unrecognized option `-rdynamic'
Undefined                       first referenced
 symbol                             in file
inet_aton                           src/misc/netutils.o
ld: fatal: Symbol referencing errors. No output written to vlc
collect2: ld returned 1 exit status
make: *** [vlc] Error 1
bautsche at jupiter > 

It would appear that the ./configure checks for inet_aton in -lresolv but then
fails to include it in the Makefile. I added that to LIB.

-rdynamic is unrecognized with gcc (I'm using gcc 2.95.2), but not an issue.


Then I'm failing here:
gcc -DSYS_solAris2_8 -Iinclude -I/usr/local/include -I/usr/X11R6/include -Wall -Winline -D_REENTRANT -D_GNU_SOURCE -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=pentium -mcpu=pentium -fPIC -c -o plugins/dvd/dvd_ioctl.o plugins/dvd/dvd_ioctl.c
In file included from plugins/dvd/dvd_ioctl.c:48:
plugins/dvd/dvd_ioctl.h:50: asm/byteorder.h: No such file or directory
make: *** [plugins/dvd/dvd_ioctl.o] Error 1
bautsche at jupiter > 

byteorder.h is in sys/byteorder.h in Solaris.
Dirty-fixed this by simply changing it in plugins/dvd/dvd_ioctl.h:50.


Then I'm failing here:
gcc -DSYS_solAris2_8 -Iinclude -I/usr/local/include -I/usr/X11R6/include -Wall -Winline -D_REENTRANT -D_GNU_SOURCE -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=pentium -mcpu=pentium -fPIC -c -o plugins/dvd/dvd_ifo.o plugins/dvd/dvd_ifo.c
In file included from plugins/dvd/dvd_ifo.c:37:
include/common.h:43: conflicting types for `boolean_t'
/usr/include/sys/types.h:182: previous declaration of `boolean_t'
make: *** [plugins/dvd/dvd_ifo.o] Error 1
bautsche at jupiter > 

Dirty-fixed this by removing the definition from include/common.h:43.
Solaris definition (from /usr/include/sys/types.h:182) is this:
typedef enum { B_FALSE, B_TRUE } boolean_t;


Then I'm failing here:
gcc -DSYS_solAris2_8 -Iinclude -I/usr/local/include -I/usr/X11R6/include -Wall -Winline -D_REENTRANT -D_GNU_SOURCE -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=pentium -mcpu=pentium -fPIC -c -o plugins/dsp/aout_dsp.o plugins/dsp/aout_dsp.c
plugins/dsp/aout_dsp.c:53: sys/soundcard.h: No such file or directory
make: *** [plugins/dsp/aout_dsp.o] Error 1
bautsche at jupiter > 

This is where I give up, as Solaris sound system seems to works utterly
different.

I removed dsp from the PLUGINS list in the Makefile.


Then I'm failing here:
bautsche at jupiter > make
gcc -DSYS_solAris2_8 -Iinclude -I/usr/local/include -I/usr/X11R6/include -Wall -Winline -D_REENTRANT -D_GNU_SOURCE -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=pentium -mcpu=pentium -fPIC -c -o plugins/sdl/vout_sdl.o plugins/sdl/vout_sdl.c
plugins/sdl/vout_sdl.c:37: SDL/SDL.h: No such file or directory
make: *** [plugins/sdl/vout_sdl.o] Error 1
bautsche at jupiter > 

I removed sdl from the PLUGINS list in the Makefile.

Comilation now finishes.
vlc does not start however:

bautsche at jupiter > which vlc
/opt/EABvlc-0.2.63/bin/vlc
bautsche at jupiter > vlc
VideoLAN Client - version 0.2.63 Urumov - (c)1996-2000 VideoLAN

intf error: no suitable intf module
intf error: interface initialization failed
bautsche at jupiter > truss -f vlc
2403:   execve("/opt/EABvlc-0.2.63/bin/vlc", 0x080475FC, 0x08047604)  argc = 1
2403:   xstat(2, "/opt/EABvlc-0.2.63/bin/vlc", 0x08047398) = 0
2403:   open("/var/ld/ld.config", O_RDONLY)             Err#2 ENOENT
2403:   sysconfig(_CONFIG_PAGESIZE)                     = 4096
2403:   open("/usr/lib/libdl.so.1", O_RDONLY)           = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0x00000000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDFBC0000
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libsocket.so.1", O_RDONLY)       = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0x00000000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 110592, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDFB90000
2403:   mmap(0xDFBAA000, 2908, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 40960) = 0xDFBAA000
2403:   munmap(0xDFB9A000, 65536)                       = 0
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libnsl.so.1", O_RDONLY)          = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0xDFBB0000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 589824, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDFAF0000
2403:   mmap(0xDFB73000, 20820, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 471040) = 0xDFB73000
2403:   mmap(0xDFB79000, 27068, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xDFB79000
2403:   munmap(0xDFB63000, 65536)                       = 0
2403:   mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xDFAE0000
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libpthread.so.1", O_RDONLY)      = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0xDFBB0000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 90112, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDFAC0000
2403:   mmap(0xDFAD5000, 256, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 20480) = 0xDFAD5000
2403:   munmap(0xDFAC5000, 65536)                       = 0
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libresolv.so.2", O_RDONLY)       = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0xDFBB0000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 192512, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDFA80000
2403:   mmap(0xDFAAC000, 6960, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 114688) = 0xDFAAC000
2403:   mmap(0xDFAAE000, 2428, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xDFAAE000
2403:   munmap(0xDFA9C000, 65536)                       = 0
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libm.so.1", O_RDONLY)            = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0xDFBB0000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 114688, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDFA60000
2403:   mmap(0xDFA7A000, 4108, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 40960) = 0xDFA7A000
2403:   munmap(0xDFA6B000, 61440)                       = 0
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libc.so.1", O_RDONLY)            = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0xDFBB0000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 634880, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDF9C0000
2403:   mmap(0xDFA53000, 22616, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 536576) = 0xDFA53000
2403:   mmap(0xDFA59000, 4764, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xDFA59000
2403:   munmap(0xDFA43000, 65536)                       = 0
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libmp.so.2", O_RDONLY)           = 3
2403:   fxstat(2, 3, 0x080471CC)                        = 0
2403:   mmap(0xDFBB0000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 81920, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDF9A0000
2403:   mmap(0xDF9B3000, 604, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 12288) = 0xDF9B3000
2403:   munmap(0xDF9A3000, 65536)                       = 0
2403:   mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xDF990000
2403:   close(3)                                        = 0
2403:   open("/usr/lib/libthread.so.1", O_RDONLY)       = 3
2403:   fxstat(2, 3, 0x080471C0)                        = 0
2403:   mmap(0xDFBB0000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xDFBB0000
2403:   mmap(0x00000000, 225280, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xDF950000
2403:   mmap(0xDF97A000, 4420, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 106496) = 0xDF97A000
2403:   mmap(0xDF97C000, 42460, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xDF97C000
2403:   munmap(0xDF96A000, 65536)                       = 0
2403:   close(3)                                        = 0
2403:   munmap(0xDFBB0000, 4096)                        = 0
2403:   getcontext(0xDF986320)
2403:   lwp_self()                                      = 1
2403:   sigfillset(0xDFA59300)                          = 0
2403:   sysi86(SI86DSCR, 0x08047300, 0xDF986310, 0xDF97A000) = 0x00000000
2403:   brk(0x080B5548)                                 = 0
2403:   sysconfig(_CONFIG_PAGESIZE)                     = 4096
2403:   sysconfig(_CONFIG_SEM_VALUE_MAX)                = 2147483647
2403:   sysi86(SI86DSCR, 0x08047300, 0xDF9865D8, 0xDF97A000) = 0x00000000
2403:   lwp_self()                                      = 1
2403:   sigprocmask(SIG_SETMASK, 0x00000000, 0x0804733C) = 0
2403:   sigprocmask(SIG_SETMASK, 0xDF97A8FC, 0x00000000) = 0
2403:   sigaction(SIGLWP, 0xDF97B10C, 0x00000000)       = 0
2403:   sigaction(SIGCANCEL, 0xDF97B10C, 0x00000000)    = 0
2403:   brk(0x080B5548)                                 = 0
2403:   brk(0x080B7548)                                 = 0
2403:   sysconfig(_CONFIG_STACK_PROT)                   = 7
2403:   mmap(0x00000000, 8421376, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON, -1, 0) = 0xDF000000
2403:   mprotect(0xDF000000, 4096, PROT_NONE)           = 0
2403:   mprotect(0xDF101000, 4096, PROT_NONE)           = 0
2403:   mprotect(0xDF202000, 4096, PROT_NONE)           = 0
2403:   mprotect(0xDF303000, 4096, PROT_NONE)           = 0
2403:   mprotect(0xDF404000, 4096, PROT_NONE)           = 0
2403:   mprotect(0xDF505000, 4096, PROT_NONE)           = 0
2403:   mprotect(0xDF606000, 4096, PROT_NONE)           = 0
2403:   mprotect(0xDF707000, 4096, PROT_NONE)           = 0
2403:   mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xDFBB0000
2403:   sysi86(SI86DSCR, 0x08047068, 0xDFBB0FF8, 0xDFA53000) = 0x00000000
2403:   lwp_create(0x080470B0, __LWP_ASLWP, 0xDF807DC4) = 2
2403:   lwp_create()    (returning as new lwp ...)      = 0
2403:   door_create(0xDF9644B8, 0x00000000, 0x00000002) = 3
2403:   getpid()                                        = 2403 [2402]
2403:   lwp_schedctl(SC_STATE|SC_BLOCK, 3, 0x08047308)  = 0
2403:   door_info(3, 0xDF9803B4)                        = 0
2403:   mmap(0x00000000, 20480, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON, -1, 0) = 0xDF930000
2403:   mprotect(0xDF930000, 4096, PROT_NONE)           = 0
2403:   sysi86(SI86DSCR, 0x08047098, 0xDFBB0FF0, 0xDFA53000) = 0x00000000
2403:   lwp_create(0x080470E0, LWP_DETACHED|LWP_SUSPENDED, 0xDF934DC4) = 3
2403:   lwp_create()    (returning as new lwp ...)      = 0
2403:   lwp_continue(3)                                 = 0
2403:   lwp_schedctl(SC_STATE|SC_BLOCK, -1, 0xDF934D50) = 0
2403:   lwp_schedctl(SC_DOOR, 0, 0x00000000)            = 4
2403:   door_bind(4)                                    = 0
2403:   close(4)                                        = 0
2403:   close(3)                                        = 0
2403:   sigaction(SIGWAITING, 0xDF97A758, 0x00000000)   = 0
2403:   lwp_self()                                      = 1
2403:   sysi86(SI86FPHW, 0xDFA5A234, 0x080475B8, 0xDFBFB000) = 0x00000000
2403:   ioctl(1, TCGETA, 0x08046798)                    = 0
VideoLAN Client - version 0.2.63 Urumov - (c)1996-2000 VideoLAN

2403:   write(1, " V i d e o L A N   C l i".., 65)      = 65
2403:   open64(".", O_RDONLY|O_NDELAY)                  = 3
2403:   fcntl(3, F_SETFD, 0x00000001)                   = 0
2403:   fstat64(3, 0x08047474)                          = 0
2403:   getdents64(3, 0x080B6DE0, 1048)                 = 1032
2403:   getdents64(3, 0x080B6DE0, 1048)                 = 1040
2403:   getdents64(3, 0x080B6DE0, 1048)                 = 152
2403:   getdents64(3, 0x080B6DE0, 1048)                 = 0
2403:   close(3)                                        = 0
2403:   open64("lib", O_RDONLY|O_NDELAY)                Err#2 ENOENT
2403:   open64("/opt/EABvlc-0.2.63/lib/videolan/vlc", O_RDONLY|O_NDELAY) = 3
2403:   fcntl(3, F_SETFD, 0x00000001)                   = 0
2403:   fstat64(3, 0x08047474)                          = 0
2403:   getdents64(3, 0x080B6DE0, 1048)                 = 72
2403:   open("/opt/EABvlc-0.2.63/lib/videolan/vlc/ps.so", O_RDONLY) = 4
2403:   fxstat(2, 4, 0x08047308)                        = 0
2403:   mmap(0x00000000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0xDF920000
2403:   mmap(0x00000000, 73728, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0xDF900000
2403:   mmap(0xDF911000, 3656, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4, 4096) = 0xDF911000
2403:   munmap(0xDF902000, 61440)                       = 0
2403:   close(4)                                        = 0
2403:   mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xDF8F0000
2403:   munmap(0xDF920000, 4096)                        = 0
2403:   brk(0x080B7548)                                 = 0
2403:   brk(0x080B9548)                                 = 0
2403:   getdents64(3, 0x080B6DE0, 1048)                 = 0
2403:   close(3)                                        = 0
2403:   munmap(0xDF911000, 3680)                        = 0
2403:   munmap(0xDF900000, 7348)                        = 0
intf error: no suitable intf module2403:        write(2, " i n t f   e r r o r :  ".., 35)      = 35

2403:   write(2, "\n", 1)                               = 1
intf error: interface initialization failed2403:        write(2, " i n t f   e r r o r :  ".., 43)      = 43

2403:   write(2, "\n", 1)                               = 1
2403:   llseek(0, 0, SEEK_CUR)                          = 9066
2403:   llseek(0, 0, SEEK_CUR)                          = 9105
2403:   _exit(2)
bautsche at jupiter > 


Any ideas?

Ciao,
Eric



P.S. This message was sent from my laptop. If you use MS products (or any
	 other mail client that does not adhere to the relevant RFCs) you may
	 have to change the "To:" line manually to eric.bautsch at pobox.com.
	 Otherwise I will not even know you ever replied...


      ____
     /          .                           Eric A. Bautsch
    /--   __       ___                ______________________________________
   /     /    /   /                  /
  (_____/____(___(__________________/       email: eric.bautsch at pobox.com





More information about the vlc-devel mailing list