Dados os seguintes fatos sobre compilação e distribuição d...
Dados os seguintes fatos sobre compilação e distribuição de programas GPL,
I. Sempre que distribuir software GPL em formato executável você deve disponibilizar o código fonte correspondente completo.
II. Código fonte completo significa todo o código fonte para todos os módulos, além de arquivos de definição de interface associados, e scripts usados para controlar a compilação e a instalação do executável.
III. O compilador usado para compilar o código fonte para sistemas operacionais de propósito geral deve ser distribuído também.
IV. No caso de compilação cruzada para sistemas embarcados específicos, se o compilador for baseado no GCC, este não precisa ser distribuído junto com o código fonte.
V. Para um programa C típico deve ser distribuído todo o código fonte (arquivos .c), arquivos de cabeçalho (arquivos .h) e scripts usados para controlar a compilação e instalação.
verifica-se que estão corretos
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C (I, II e V, apenas).
A questão aborda as obrigações relacionadas à distribuição de programas sob a licença pública geral GNU, conhecida como GPL. Para resolver tal questão com sucesso, é necessário entender os princípios da GPL, que é uma licença de software livre que assegura a liberdade de compartilhar e mudar o software livre para garantir que ele seja livre para todos os seus usuários.
De acordo com a GPL:
- I - Correto: Ao distribuir software sob a GPL em formato executável, é obrigatório disponibilizar o código fonte correspondente completo. Isso permite que os usuários estudem e modifiquem o software.
- II - Correto: O termo "código fonte completo" refere-se a todo o código necessário para gerar o executável, incluindo os arquivos de definição de interface e scripts utilizados para compilar e instalar o software. Isso garante que os usuários tenham acesso a tudo o que é necessário para entender e alterar o software.
- III - Incorreto: Não é necessário distribuir o compilador junto com o código fonte. A GPL exige a distribuição do código fonte que foi usado para construir o executável, mas não estende essa exigência para as ferramentas utilizadas para compilar esse código, como o compilador.
- IV - Incorreto: Independente de se o compilador é baseado no GCC ou não, a GPL não exige que ferramentas de compilação sejam distribuídas com o software, a menos que essas sejam parte do programa em si ou que tenham sido modificadas especificamente para ele.
- V - Correto: No caso de um programa escrito em C, é necessário distribuir os arquivos fonte (.c), os arquivos de cabeçalho (.h) e quaisquer scripts de controle de compilação e instalação, alinhando-se com o que foi descrito nos itens I e II.
O conhecimento dos termos da GPL é crucial para responder corretamente a essa questão. A alternativa C está correta porque abrange todos os pontos exigidos pela GPL em relação à distribuição do código fonte quando se distribui um software sob essa licença.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo