fluffy-willa-42-team / minishell

0 stars 0 forks source link
42 42-school 42born2code 42cursus 42project 42projects 42school bash minishell minishell42 shell shell-implementation

minishell

Why does the code look weird ?

The 42 curriculum asks us to code according to the Norme, this standard forbids us certain control structures (like do while, for, ...), a limit of 25 lines and 5 variables per function, 5 function max per .c and and other constraints.

This project has been coded according to the NormeV3 standard.

NormeV3 PDF used in this projetc

Norme repo

Requirements

Clone with submodule

git clone --recurse-submodules git@github.com:fluffy-willa-42-team/minishell.git

or if you have Oh-My-Zsh

gcl git@github.com:fluffy-willa-42-team/minishell.git

You need the GNU readline lib

MacOS

First install Brew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

For the 42 mac

rm -rf $HOME/.brew && git clone --depth=1 https://github.com/Homebrew/brew $HOME/.brew && echo 'export PATH=$HOME/.brew/bin:$PATH' >> $HOME/.zshrc && source $HOME/.zshrc && brew update

Install GNU readline lib

brew install readline 

Debian/Ubuntu

Install readline lib

 apt install libreadline-dev

Compile

To compile

make

Compile and run

make exe

Compile with fsanitize=address

make SANI=1


This work is published under the terms of 42 Unlicense.