GithubHelp home page GithubHelp logo

learning-process / programming_course_reports Goto Github PK

View Code? Open in Web Editor NEW
0.0 3.0 4.0 93 KB

Programming Course Reports

License: BSD 3-Clause "New" or "Revised" License

CMake 74.73% TeX 25.27%
latex linux windows miktex texlive

programming_course_reports's Introduction

Build application

Programming Course Reports

The following reporting technologies are considered in practice:

  • LaTeX

Rules for submissions

  1. You are not supposed to trigger CI jobs by frequent updates of your pull request. First you should test you work locally with all the scripts (code style)
    • Respect others time and don't slow down the job queue
  2. Carefully check if the program can hang

1. Set up your environment

Fetch submodules before building the project

git submodule update --init --recursive

Reporting technologies

LaTeX

  • Windows:
  1. Install Chocolatey

  2. Install TeX distribution:

    Choose one of two (any) TeX distribution to install

    • miktex
      choco install miktex
      Add miktex installation path to your system PATH environment variable. Default installation location: "C:\Program Files\MiKTeX\miktex\bin\x64"
    • texlive (takes more disk space and time to setup)
      choco install texive --params="'/scheme:full'" --execution-timeout=10000
  3. Refresh your environment (reopen the console or type refreshenv) and check if TeX distribution is set up. E.g. use this command (it should be available and display the current version of pdflatex tool):

    pdflatex --version
  • Linux:
sudo apt install texlive*
  • MacOS (apple clang):

Unsupported operating system!

2. Build the project with CMake

Navigate to a source code folder.

  1. Configure the build:
mkdir build && cd build
cmake -D USE_LATEX=ON ..

Help on CMake keys:

  • -D USE_LATEX=ON enable LaTeX reports.

A corresponding flag can be omitted if it's not needed.

  1. Build the project:
cmake --build .
  1. Check the task
  • View report <project's folder>/build/bin

3. How to submit you work

  • There are task_1, task_2, task_3, task_4 folders in modules directory. There are 4 task's reports for the semester. Move to a folder of your task. Make a directory named <last name>_<first letter of name>_<short task name>. Example: task1/nesterov_a_vector_sum.

  • Go into the newly created folder and begin you work on the report. There must be only 2 files and 1 of them must be written by you:

    • nesterov_a_vector_sum.tex - a LaTeX report file which consider information about your program, name it in the same way as <last name>_<first letter of name>_<short task name> same as directory.
    • CMakeLists.txt - a file to configure your project. Examples for each configuration can be found in test_tasks/test_latex.
  • The number of directories will increase with time. To build only your project, you need to do the following:

    cmake --build . --target <name task's directory> 
    

    Example:

    cmake --build . --target nesterov_a_vector_sum 
    
  • Name your pull request in the following way:

    • for report:
    <Фамилия Имя>. Отчет. <Полное название задачи>.
    Нестеров Александр. Отчет. Сумма элементов вектора.
    
  • Provide the full task definition in pull request's description.

    Example pull request is located in repo's pull requests.

  • Work on your fork-repository. Keep your work on a separate branch and NOT on master!!!. Name you branch in the same way as your task's folder. To create a branch run:

    git checkout -b nesterov_a_vector_sum
    

Failing to follow the rules makes the project build red.

programming_course_reports's People

Contributors

allnes avatar aobolensk avatar

Watchers

 avatar  avatar  avatar

programming_course_reports's Issues

Устаревшая ссылка miktex для Windows

@allnes, добрый вечер! Я нашел ошибку во время установки на винду.

В файле miktex_install.ps1 есть строчка

$installerUrl = 'https://mirrors.rit.edu/CTAN/systems/win32/miktex/setup/windows-x64/basic-miktex-22.10-x64.exe'

Такой версии(22,10) больше не существует. Вот ресурс откуда происходит скачивание. Надо изменить на версию 23. То есть

$installerUrl = 'https://mirrors.rit.edu/CTAN/systems/win32/miktex/setup/windows-x64/basic-miktex-23.10-x64.exe'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.