[AG-DEV] Windows compile of VIC w/ VC7

Thomas D. Uram turam at mcs.anl.gov
Wed Feb 22 14:19:10 CST 2006


Hello Ben:

I compiled a Windows vic with your patch last night.  You can find it at:

http://www.mcs.anl.gov/~turam/AG/vic_fullscreen.exe

An image of my desktop running this vic in 2x2 mode is here
(sorry if you were in the NCSA lobby at the time, you're now in this image):

http://www.mcs.anl.gov/~turam/AG/fullscreen.PNG

Nice going.  I like this functionality in vic.  It's very similar to what VP 
does, with
layout and full screen.  I have a couple comments:

- With multiple displays, I couldn't get the layout to fill the screen.
It tended to want to use one display, and sometimes left the video windows
too small, filling in the intervening space with gray.

- You mentioned that new streams are not added to those displayed.
This should be easy to add, especially with the Autoplace functionality
as an example.

- Vic consumed ~90% of the CPU on my 1.8GHz XP box, and rendered
it largely unresponsive; it was much better on a dual 2.8GHz box.

I think with some work this could lend a very professional appearance
to the AG display.  Do you have plans to continue working on this?
Are there other people on the list who could throw some effort into
this?  I'll probably end up poking at it in my spare time, in any case...

Tom



On 8/3/05 9:32 AM, Ben Bogart wrote:
> Hello Thomas,
> 
> Thank you for the quick responce. 
> 
> I've forwarded your message to my co-worker with the "professional" VC++
> 7. I did try downloading the free version, but the commandline can't
> seem to find nmake nor devenv (who make up this name?!?!). 
> 
> As for the patches specifically they add a new button to vic
> "fullscreen" which is in some ways parallel to autoplace with two
> important features: 
> 
> #1 Video windows are rendered in one grid without title-bars. This is
> sorely needed for artistic applications where emmersion is needed.
> (Installations, Stereo, VR etc would all benifit)
> 
> #2 fullscreen makes no attempt to understand your screen layout and so
> you need to specify the resolution of each screen, how many screens and
> what the offset from the "operator" screen is. This means that the grid
> created never puts a video half on one projection and half on another.
> Our node here has three screens surrounding the room, rather than a
> projection wall. This makes autoplace a real nightmare to use.
> (compounded by the fact that the operator is in another room and cannot
> see the screens) Fullscreen creates a separate interface to deal with
> the videos, switching between them and read the srcid names.
> 
> The one bug with this multiple videos in one window approach is when a
> video dies off (stops transmitting) then the dead video stays until the
> fullscreen window is dismissed and recreated. New sources coming into
> the room will also not automatically get added to the fullscreen window. 
> 
> The fullscreen window is totally independant of the autoplace and normal
> click-on windows. This means it can be used in combination to have a few
> fullscreen windows along side an autoplace configuration or manually
> placed windows. 
> 
> Let me know if you have any questions. 
> 
> The SIGGRAPH crew has expressed interest in the system to use in large
> presentation environments. 
> 
> B. Bogart
> Ryerson University
> 
> ----- Original Message -----
> From: "Thomas D. Uram" <turam at mcs.anl.gov>
> Date: Wednesday, August 3, 2005 10:12 am
> Subject: Re: [AG-DEV] Windows compile of VIC w/ VC7
> 
>> Hi Ben:
>>
>> Recently on this list, on a separate topic, Doug Kosovic wrote:
>>
>>> You could always download the free Visual C++ Toolkit 2003 (which 
>> includes the same C/C++ compiler and linker as VS.NET 2003), see:
>>>  http://msdn.microsoft.com/visualc/vctoolkit2003/
>> Details of how we build vic for windows as part of the AG toolkit 
>> can be 
>> found in AccessGrid/packaging/BuildVic.py (a less than 
>> straightforward 
>> location, yes).
>>
>> You should be able to build vic by opening a visual studio command 
>> window in the ag-media directory, and:
>>
>> devenv vic\vic.sln /rebuild "DDraw Release"
>>
>> You've found the right place to send the patches.  We'll have to 
>> look at 
>> them more closely to decide whether they have general applicability 
>> before committing them; a more detailed description of what they 
>> accomplish would be helpful.
>>
>> If you run into more trouble, continue sending to ag-dev.
>>
>> Tom
>>
>>
>> B. Bogart wrote:
>>> Hello all,
>>>
>>> I got a co-worker to try and compile VIC for windows but even 
>> compiling 
>>> TCL fails pretty fast. We have VC++ 7. (errors attached)
>>>
>>> Any hints? A howto on compiling VIC for windows?
>>>
>>> Where can I email patches to VIC for improvements?
>>>
>>> At this rate I'm going to blow away windows on the display 
>> machine and 
>>> switch to linux.
>>>
>>> Thanks.
>>> B. Bogart
>>> Ryerson University
>>>
>>>
>>> ------------------------------------------------------------------
>> ------
>>> Subject:
>>> Re: compile vic please?
>>> From:
>>> Rob King <r5king at ryerson.ca>
>>> Date:
>>> Tue, 02 Aug 2005 13:39:53 -0400
>>> To:
>>> ben at ekran.org
>>>
>>> To:
>>> ben at ekran.org
>>>
>>>
>>>    Hi Ben,
>>>
>>>    I hoped the compile would be simple, but it's become very 
>> difficult 
>>> because it was built to be compiled under VC++5, where I have 7 
>> (2003).  
>>> Of course microsoft wouldn't want to keep backwards 
>> compatability?  I 
>>> worked around the first couple errors compiling TCL, but I'm 
>> stuck on 
>>> these:
>>>
>>>        C:\Progra~1\Micros~2.net\Vc7\bin\link.exe /RELEASE 
>> /NODEFAULTLIB 
>>> /RELEAS
>>> E /NOLOGO /MACHINE:IX86 -entry:_DllMainCRTStartup at 12 -dll 
>>> -def:.\Release\tcl.def
>>>  -out:.\Release\tcl80.dll .\Release\tcl.res msvcrt.lib 
>> oldnames.lib 
>>> kernel32.li
>>> b  advapi32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib 
>>> @C:\DOCUME~1\r5ki
>>> ng\LOCALS~1\Temp\nm21A.tmp
>>> .\Release\tcl.def(2) : warning LNK4017: EXETYPE statement not 
>> supported 
>>> for the
>>> target platform; ignored
>>> .\Release\tcl.def(3) : warning LNK4017: CODE statement not 
>> supported for 
>>> the tar
>>> get platform; ignored
>>> .\Release\tcl.def(4) : warning LNK4017: DATA statement not 
>> supported for 
>>> the tar
>>> get platform; ignored
>>>   Creating library .\Release\tcl80.lib and object 
>> .\Release\tcl80.exp> tclEnv.obj : error LNK2019: unresolved 
>> external symbol __environ 
>>> referenced in f
>>> unction _TclSetupEnv
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_http 
>>> referenced
>>> in function _Tcl_Init
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_word 
>>> referenced
>>> in function _Tcl_Init
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_parray 
>>> reference
>>> d in function _Tcl_Init
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_ldAout 
>>> reference
>>> d in function _Tcl_Init
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_history 
>>> referenc
>>> ed in function _Tcl_Init
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_safe 
>>> referenced
>>> in function _Tcl_Init
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_optparse 
>>> referen
>>> ced in function _Tcl_Init
>>> tclWinInit.obj : error LNK2019: unresolved external symbol 
>> _lib_init 
>>> referenced
>>> in function _Tcl_Init
>>> tclWinTime.obj : error LNK2019: unresolved external symbol 
>> __timezone 
>>> referenced
>>> in function _TclpGetTimeZone
>>> tclWinTime.obj : error LNK2019: unresolved external symbol 
>> __daylight 
>>> referenced
>>> in function _TclpGetTZName
>>>
>>>
>>> I also pokrd around in common, but am not having too much luck 
>> there 
>>> either.  Any hints??
>>>
>>> Cheers,
>>> -rob
>>>
>>> p.s. what's the phone extention over there?
>>>
>>>
>>>
>>>
>>>
>>>
>>> B. Bogart wrote:
>>>
>>>>> Hey Rob,
>>>>>
>>>>> I'm just going to call you. Could you compile vic for windows 
>> on your
>>>>> VC++? We would really like to use it for the siggaph stuff this 
>> week.>>>
>>>>> Attached is the ag-media stuff. To compile vic you need to:
>>>>>
>>>>> compile tcl first
>>>>> then tk
>>>>> then common
>>>>> finally vic
>>>>>
>>>>> tcl and tk seem to have nmake files "makefile.vc" you can 
>> rename 
>>>>> those to
>>>>> "makefile" and nmake should find em. I hope you don't need to 
>> edit the
>>>>> makefile, absolute paths I hope not!
>>>>>
>>>>> Anyhow I'm calling you now but thought I would send this ahead.
>>>>>
>>>>> b>
>>>>>   
>>>>
>>>> Here is the source: www.ekran.org/ben/research/ag-media-rye.tar.bz2
>>>>  
>>>>
>>>>
>>>>
>>>>
>>>>  
>>>>
>>>
> 
> 




More information about the ag-dev mailing list