*Easysock* is a single-file, easy-to-use socket library, that can be used for network programming in C. It has no dependencies other than the C standard library.
*Easysock* is a single-file, easy-to-use socket library, that can be used for network programming in C. It has no dependencies other than the C standard library.
@ -10,17 +9,17 @@ The library can be compiled using the provided Makefile.
make
make
```
```
There are a few optional targets, which enable specific functionality.
There are a few optional targets, which enable specific functionality.
`allwarn - enable all warnings`
`allwarn - enable all warnings`
`debug - compile with 'debug' flag`
`debug - compile with 'debug' flag`
`static - compile as statically linked library - NOT IMPLEMENTED`
`static - compile as statically linked library - NOT IMPLEMENTED`
<br/>
<br/>
<br/>
<br/>
They can be used as follows:
They can be used as follows:
`make [TARGET NAME]`
`make [TARGET NAME]`
___
___
### Installation
### Installation
@ -40,8 +39,12 @@ To use the library, simply include the header file:
#include<easysock.h>
#include<easysock.h>
...
...
```
```
and link the library:
and link the library:
`gcc example.c -o example -leasysock`
`gcc example.c -o example -leasysock`
___
___
### Troubleshooting
* **Library isn't loaded on Arch Linux, "cannot open shared object file: No such file or directory"**
This is becacuse Arch Linux [doesn't include '/usr/local/lib'](https://libreddit.tiekoetter.com/r/archlinux/comments/ws9qty/why_is_usrlocallib_not_in_the_default_search_path/) in its library search path by default. To add it, create a file ending in '.conf' under `/etc/ld.so.conf.d/`, and add '/usr/local/lib' to it. Then, run `ldconfig` as root.
This file was written using [Dillinger](https://dillinger.io).
This file was written using [Dillinger](https://dillinger.io).