Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
docs: simplify and document that file
[simgrid.git] / docs / source / intro_yours.rst
index cb18464..727330b 100644 (file)
@@ -3,16 +3,16 @@
 Start your Own Project
 ======================
 
-It is not advised to modify the simgrid source code directly, as it
+It is not advised to modify the SimGrid source code directly, as it
 will make it difficult to upgrade to the next version of SimGrid.
 Instead, you should create your own working directory somewhere on
-your disk (say `/home/joe/MyFirstScheduler/`), and write your code in
-there. 
+your disk (say `/home/joe/MyFirstSimulator/`), and write your code in
+there.
 
 Cloning a Template Project for S4U
 ----------------------------------
 
-If you plan to use the modern S4U interface of SimGrid, the easiest is
+If you plan to use the modern S4U interface of SimGrid, the easiest way is
 to clone the `Template Project
 <https://framagit.org/simgrid/simgrid-template-s4u>`_ directly. It
 contains the necessary configuration to use cmake and S4U together.
@@ -31,13 +31,13 @@ your project. It builds two simulators from a given set of source files.
 
    cmake_minimum_required(VERSION 2.8.8)
    project(MyFirstSimulator)
-   
+
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
-   
+
    set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
    find_package(SimGrid REQUIRED)
    include_directories(${SimGrid_INCLUDE_DIR})
-   
+
    set(SIMULATOR_SOURCES main.c other.c util.c)
    add_executable(my_simulator ${SIMULATOR_SOURCES})
    target_link_libraries(my_simulator ${SimGrid_LIBRARY})
@@ -52,7 +52,7 @@ For that, you need `FindSimGrid.cmake
 that is located at the root of the SimGrid tree. You can either copy
 this file into the `cmake/Modules` directory of your project, or use
 the version installed on the disk. Both solutions present advantages
-and drawback: if you copy the file, you have to keep it in sync
+and drawbacks: if you copy the file, you have to keep it in sync
 manually but your project will produce relevant error messages when
 trying to compile on a machine where SimGrid is not installed. Please
 also refer to the file header for more information.
@@ -62,8 +62,8 @@ Building your project with Makefile
 
 Here is a Makefile that will work if your project is composed of three
 C files named ``util.h``, ``util.c`` and ``mysimulator.c``. You should
-take it as a starting point, and adapt it to your code. There is a
-plenty of documentation and tutorial on Makefile if the file's
+take it as a starting point, and adapt it to your code. There are
+plenty of documentation and tutorials on Makefile if the file's
 comments are not enough for you.
 
 .. code-block:: makefile
@@ -75,7 +75,7 @@ comments are not enough for you.
    # This second rule lists the dependencies of the mysimulator binary
    # How this dependencies are linked is described in an implicit rule below
    mysimulator: mysimulator.o util.o
-   
+
    # These third give the dependencies of the each source file
    mysimulator.o: mysimulator.c util.h # list every .h that you use
    util.o: util.c util.h
@@ -90,18 +90,18 @@ comments are not enough for you.
 
    # CFLAGS = -g -O0 $(WARNINGS) # Use this line to make debugging easier
    CFLAGS = -g -O2 $(WARNINGS) # Use this line to get better performance
-   
+
    # No change should be mandated past that line
    #############################################
    # The following are implicit rules, used by default to actually build
    # the targets for which you listed the dependencies above.
-   
+
    # The blanks before the $(CC) must be a Tab char, not spaces
    %: %.o
        $(CC) -L$(SIMGRID_INSTALL_PATH)/lib/    $(CFLAGS) $^ -lsimgrid -o $@
    %.o: %.c
        $(CC) -I$(SIMGRID_INSTALL_PATH)/include $(CFLAGS) -c -o $@ $<
-   
+
    clean:
        rm -f *.o *~
    .PHONY: clean
@@ -115,7 +115,8 @@ Eclipse. You have to run cmake and import it as a Makefile project.
 Next you have to activate C++11 in your build settings, add -std=c++11
 in the CDT GCC Built-in compiler settings.
 
-.. image:: img/eclipseScreenShot.png
+.. image:: /img/eclipseScreenShot.png
+   :align: center
 
 
 Building the Java examples in Eclipse
@@ -146,13 +147,13 @@ Troubleshooting your Project Setup
 Library not found
 ^^^^^^^^^^^^^^^^^
 
-When the library cannot be found, you will get such an error message similar:
+When the library cannot be found, you will get such an error message similar to:
 
 .. code-block:: shell
 
   ./masterworker1: error while loading shared libraries: libsimgrid.so: cannot open shared object file: No such file or directory
 
-To fix this, give the path to where you installed the library into the
+To fix this, add the path to where you installed the library to the
 ``LD_LIBRARY_PATH`` variable. You can add the following line to your
 ``~/.bashrc`` so that it gets executed each time you log into your
 computer.
@@ -166,7 +167,7 @@ Many undefined references
 ^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. code-block:: shell
-               
+
   masterworker.c:209: undefined reference to `sg_version_check'
   masterworker.c:209: undefined reference to `MSG_init_nocheck'
   (and many other undefined references)
@@ -180,7 +181,7 @@ Only a few undefined references
 
 Sometimes, the compilation only spits very few "undefined reference"
 errors. A possible cause is that the system selected an old version of
-the SimGrid library somewhere on your disk. 
+the SimGrid library somewhere on your disk.
 
 Dicover which version is used with ``ldd name-of-yoursimulator``.
 Once you've found the obsolete copy of SimGrid, just erase it, and