SCV
4.2.1
Simple Components for Visual
|
A estrutura de arquivos do SCV é apresentada nas seguintes figuras.
Para compilar a biblioteca no Linux, é necessário instalar os pacotes de desenvolvimento da Freeglut e GLEW, além das bibliotecas do OpenGL (do Projeto Mesa ou de alguma implementação de proprietária). Após, basta executar o make no diretório raiz do projeto. Para realizar uma build otimizada use 'make release'. Os binários serão colocados no diretório bin/.
A funcionalidade do FileOpen não está contida na versão do SCV para Code::Blocks, visto que utilizava funções nativas apenas suportadas pelo Visual Studio 2010.
Os 4 módulos principais estão divididos em diretórios separados. O makefile do diretório raiz automaticamente faz build de todos os módulos. Regras específicas de cada módulo estão no arquivo rules.mk presente em cada diretório, e os arquivos Makefile e common-rules.mk contém o framework geral de compilação.
O diretório userProject tem makefile próprio e é compilado independentemente do resto do código. Ele pode ser usado como modelo para seus projetos que usam o SCV.
A solution scv.sln engloba 4 projetos Microsoft Visual Studio 10, que compilam os 4 componentes executáveis do projeto.
Para compilar cada projeto deve-se definí-lo como projeto de inicialização ("Startup project").
Para compilar uma aplicação com o SCV deve-se adicionar 5 bibliotecas: Freeglut.lib, Glew32.lib, openGL.lib e scv-debug.lib (ou scv-release.lib). Na interface do Visual Studio 2010, isso pode ser feito nos campos properties/VC++ Directories e properties/Linker/Input, como mostrado nas seguintes figuras. Esta configuração leva em consideração a organização de pastas do SCV. Isso pode ser modificado livremente pelo programador.
Para rodar os demos ou programas desenvolvidos no VS2010 em máquinas que não tenham o VS, deve-se instalar também o Microsoft Visual C++ 2010 Redistributable. Sem ele, vem um aviso que faltam dlls para execução, mais especificamente as MSVCP100.dll e MSVCR100.dll.
O instalador da runtime pode ser baixado da Microsoft através deste link: http://www.microsoft.com/downloads/en/confirmation.aspx?familyid=A7B7A05E-6DE6-4D3A-A423-37BF0912DB84&displaylang=en
Outra opção é simplesmente copiar essas duas DLLs do seu computador com VS para a pasta do exe. (Ficam em C:\Windows\System32\msvcp100.dll e C:\Windows\System32\msvcr100.dll)
Também existe um projeto standalone "userProject" para compilação de projetos desenvolvidos pelo usuario, com o uso das ferramentas de geração automática de código (InterfaceDesigner e FreeFormInterfaceDesigner)
O Workspace scv.workspace engloba 5 projetos do CodeBlocks: o projeto SCV compila as bibliotecas do SCV e os outros projetos compilam os executáveis. A funcionalidade do FileOpen não está contida na versão do SCV para Code::Blocks, visto que utilizava funções nativas apenas suportadas pelo Visual Studio 2010.
Para compilar cada projeto, deve-se defini-lo como projeto ativo ("Activate Project").
Para compilar uma aplicação com o SCV em Linux, deve-se instalar os pacotes de desenvolvimento da Freeglut e GLEW, além das bibliotecas do OpenGL (do Projeto Mesa ou de alguma implementação de proprietária). Feito isso, basta adicionar as opções -lGL -lGLU -lglut -lGLEW e a biblioteca libscv-debug32.a (ou libscv-release32.a). Já para compilar uma aplicação com o SCV no Windows, deve-se adicionar as bibliotecas: libfreeglut.a, libfreeglut_static.a, libglew32.a, libglu32.a, libopengl32.a e libscv-debug32.a (ou libscv-release32.a). Na interface do CodeBlocks, isso pode ser feito nas propriedades do projeto, em Build targets e na aba "Linker settings".
Para rodar os demos ou programas desenvolvidos no CodeBlocks é necessário ter o CodeBlocks instalado. Existe um projeto standalone ("userProject") para compilação de projetos desenvolvidos pelo usuário, com o uso das ferramentos geradoras de código, InterfaceDesigner e FreeFormInterfaceDesigner.
PAHINS, C. A. L. Ambiente para construção de Interfaces gráficas de usuário com o SCV. Trabalho de Graduação em Ciência da Computação, UFSM, 2011.
PAHINS, C. A. L.; POZZER, C. T. SCV - Simple Components for Visual. Jornada Acadêmica Integrada da Universidade Federal de Santa Maria, Santa Maria, RS, 2011.
PAHINS, C. A. L.; LIMBERGER, F. A.; HENZ, B.; SPERONI, E. A.; GOTTIN, V. M.; POZZER, C. T. Uma API Livre para Composição de GUI em Aplicativos Gráficos. Fórum Internacional de Software Livre 2010 - Workshop de Software Livre, Porto Alegre, RS, 2010.
PAHINS, C. A. L.; LIMBERGER, F. A.; POZZER, C. T. Uma Abordagem Gráfica Utilizando o SCV. Jornada Acadêmica Integrada da Universidade Federal de Santa Maria, Santa Maria, RS, 2010.
PAHINS, C. A. L.; LIMBERGER, F. A.; HENZ, B.; POZZER, C. T. SCV: uma ferramenta para programação de aplicativos de interfaces gráficas. Congresso Regional de Iniciação Científica e Tecnológica em Engenharia, Rio Grande, RS, BR, 2010.
LIMBERGER, F. A.; PAHINS, C. A. L.; POZZER, C. T. SCV: uma ferramenta para programação de aplicativos de interfaces gráficas. Jornada Acadêmica Integrada da Universidade Federal de Santa Maria. Santa Maria, Santa Maria, RS, BR, 2010.
AVELAR, F. T.; GOMES, V. C. F.; POZZER, C. T. Estudo Comparativo de Bibliotecas Gráficas Integradas com OpenGL. XXII Congresso Regional de Iniciação Científica e Tecnológica em Engenharia - CRICTE, Passo Fundo, RS, 2007.
AVELAR, F. T.; GOMES, V. C. F.; POZZER, C. T. Estudo Comparativo de Bibliotecas Gráficas Integradas com OpenGL. XXII Congresso Regional de Iniciação Científica e Tecnológica em Engenharia - CRICTE, Passo Fundo, RS, 2007.