Introducción a los ejemplos de código del AWS SDK para C++
Estructura de los ejemplos de código
La carpeta de ejemplos de C++get_item.cpp y put_item.cpp. Cada archivo.cpp contiene una función main() como punto de entrada a un ejecutable independiente. Los ejecutables del proyecto se generan en una carpeta designada por el sistema de compilación y hay un archivo ejecutable para cada archivo de origen de ejemplo. El nombre del ejecutable sigue las convenciones de la plataforma ({name}.exe o simplemente {name}) y se aplica cualquier prefijo personalizadoCMakeLists.txt, como run_.
Para ejecutar una funcionalidad de ejemplo
-
Descargue el ejemplo de código deseado en el Repositorio de ejemplos de código de AWS
en GitHub. -
Abra un archivo.cpp para explorar su función
main()y cualquier método al que se haya llamado. -
Cree el proyecto, siguiendo el ejemplo para empezar en Primeros pasos con el AWS SDK para C++. Tenga en cuenta que la creación del proyecto genera un ejecutable por cada archivo de origen del proyecto.
-
Ejecute el archivo ejecutable para la funcionalidad seleccionada.
-
En una línea de comandos, ejecute ese programa mediante el archivo ejecutable en función del nombre del archivo
*.cpp. -
Si trabaja en un IDE, elija el archivo
.cppde la funcionalidad que desee mostrar y selecciónelo como opción de inicio (u objeto de inicio).
-
Pruebas unitarias
Las pruebas de los ejemplos se escriben con el marco GoogleTest. Para obtener más información, consulte GoogleTest Primer
Las pruebas unitarias de cada ejemplo se encuentran en una tests subcarpeta que contiene su propio archivo CMakeLists.txt. Para cada archivo de origen del ejemplo, hay un archivo de prueba correspondiente denominado gtest_. El ejecutable de prueba de la subcarpeta se llama <source file>.<Servicio de AWS>_gtests
Archivo CMakeLists.txt
La carpeta de cada servicio contiene un archivo denominado CMakeLists.txt. Muchos de estos archivos contienen una construcción similar a esta:
foreach(EXAMPLE IN LISTS EXAMPLES) add_executable(${EXAMPLE} ${EXAMPLE}.cpp) target_link_libraries(${EXAMPLE} aws-cpp-sdk-email aws-cpp-sdk-core) endforeach()
Para cada archivo .cpp de la carpeta, el archivo CMakeLists.txt crea un ejecutable (cmake: add_executable) con un nombre basado en el nombre del archivo de código fuente sin la extensión del archivo.
Ejemplos de código de compilación y depuración en Visual Studio
Creación y ejecución del ejemplo de código de Amazon S3
-
Obtenga el código fuente de ejemplo de Amazon S3. En este procedimiento se utiliza el ejemplo de código Ejemplos de código de Amazon S3 con el AWS SDK para C++ para empezar a utilizar Visual Studio.
-
En el Explorador de Windows, vaya a la carpeta de
s3(por ejemplo,\aws-doc-sdk-examples\cpp\example_code\s3). -
Haga clic con el botón derecho en la carpeta del ejemplo de
s3y seleccione Abrir con Visual Studio. Los proyectos de Visual Studio para CMake no tienen un archivo de "file", sino que es la carpeta completa. -
En el menú desplegable Configuration Selector del menú superior de Visual Studio, compruebe que la configuración seleccionada coincida con el tipo de compilación que seleccionó al compilar el SDK con el código fuente. Por ejemplo, debe seleccionar una configuración Debug si realizó la compilación con el código fuente mediante debug (
-DCMAKE_BUILD_TYPE=Debugen la línea de comandos de CMake de las instrucciones de instalación del SDK). -
Abra el archivo
CMakeLists.txt. -
Haga clic en Guardar. Cada vez que hace clic en Save en el archivo
CMakeLists.txt, Visual Studio actualiza los archivos generados por CMake. Si se muestra la pestaña Output, podrá ver los mensajes de registro resultantes de esta generación.-
Debe haber un cuadro desplegable en la pestaña Output que dice: "Show output from:" donde CMake debería ser la opción seleccionada de forma predeterminada.
-
La salida del último mensaje debería ser: "CMake generation finished.".
-
Si el último mensaje no es este, el archivo CMake tiene errores. No siga adelante hasta resolverlos. Consulte Solución de problemas de compilación del AWS SDK para C++.
-
Tenga en cuenta que CMake utiliza la caché de CMake para aumentar la velocidad. Si está solucionando problemas con CMake, asegúrese de hacer una limpieza total para que los mensajes de error que reciba reflejen realmente sus cambios más recientes. En Solution Explorer, haga clic con el botón derecho en
CMakeLists.txty seleccione CMake Cache y, a continuación, seleccione Delete Cache Hágalo con frecuencia a medida que vaya resolviendo problemas de CMake.
-
-
Para compilar y ejecutar ejemplos desde Visual Studio, Visual Studio coloca los ejecutables en una estructura de carpetas diferente a la de la línea de comandos. Para ejecutar el código, los ejecutables del SDK deben copiarse en el lugar correcto. Busque la línea "
TODO" del archivo CMakeLists (aprox. la línea 40) y elija la línea que hemos comentado con anterioridad para usarla en Visual Studio. Visual Studio no usa una subcarpeta dedicada para el tipo de compilación, por lo que no está incluida. Cambie la línea comentada del archivoCMakeLists.txtpara usarla en Visual Studio. -
Elimine la caché de CMake (como se ha explicado anteriormente), haga clic en el archivo
CMakeLists.txtpara seleccionar/activar la pestaña y vuelva a seleccionar Save en elCMakeLists.txtarchivo para empezar a generar los archivos de compilación de CMake. -
Abra el archivo de origen del "programa" que desee ejecutar.
-
Por ejemplo, abra
list_buckets.cpp. -
La carpeta de ejemplo de Amazon S3 está codificada para que cada "característica" de Amazon S3 que aparezca se muestre en un ejecutable dedicado exclusivamente a esa función. Por ejemplo,
list_buckets.cppse convertirá en un ejecutable que solo muestra la lista de buckets.
-
-
En el menú de la parte superior, seleccione Build y, a continuación, elija Build All.
-
La opción Show output from de la pestaña Output debería mostrar Build como la opción seleccionada y todos los mensajes de compilación y vinculación.
-
El último resultado debería ser: Build All succeeded.".
-
Ahora se generan los ejecutables para cada uno de los archivos de origen individuales. Puede confirmarlo consultando el directorio de salida de la compilación (por ejemplo,
\aws-doc-sdk-examples\cpp\example_code\s3\out\build\x64-Debug). -
Tenga en cuenta que los ejecutables llevan el prefijo "run"» porque así lo establece el archivo
CMakeLists.txt.
-
-
En el menú superior, hay una flecha verde y un selector desplegable para Debug Target. Elegir
run_list_buckets.exe. -
Haga clic en el botón de flecha verde para seleccionar el elemento de inicio.
-
Se abrirá una ventana de Visual Studio Debug Console donde se mostrará el resultado del código.
-
Pulse una tecla para cerrar la ventana o ciérrela manualmente para finalizar el programa. También puede establecer puntos de interrupción en el código y, cuando vuelva a hacer clic en ejecutar, se alcanzarán los puntos de interrupción.