{"id":15042422,"url":"https://github.com/sohaibqasem/linux-create-cxx-project","last_synced_at":"2026-02-11T17:34:26.696Z","repository":{"id":57290272,"uuid":"262498874","full_name":"sohaibqasem/linux-create-cxx-project","owner":"sohaibqasem","description":"easy to use shell script to create c++ project in linux using cmake with npm","archived":false,"fork":false,"pushed_at":"2020-06-15T16:46:07.000Z","size":66,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-12T17:54:38.029Z","etag":null,"topics":["bash","bash-script","cmake","cplusplus","create-cxx-project","cxx","linux","npm","npm-package","npm-scripts","npx","shell"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sohaibqasem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-05-09T05:48:32.000Z","updated_at":"2020-06-15T16:46:10.000Z","dependencies_parsed_at":"2022-08-24T22:11:55.656Z","dependency_job_id":null,"html_url":"https://github.com/sohaibqasem/linux-create-cxx-project","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohaibqasem%2Flinux-create-cxx-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohaibqasem%2Flinux-create-cxx-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohaibqasem%2Flinux-create-cxx-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohaibqasem%2Flinux-create-cxx-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sohaibqasem","download_url":"https://codeload.github.com/sohaibqasem/linux-create-cxx-project/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247478331,"owners_count":20945267,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","bash-script","cmake","cplusplus","create-cxx-project","cxx","linux","npm","npm-package","npm-scripts","npx","shell"],"created_at":"2024-09-24T20:47:17.183Z","updated_at":"2026-02-11T17:34:21.677Z","avatar_url":"https://github.com/sohaibqasem.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Os](https://img.shields.io/badge/os-linux-green.svg?branch=master)](https://img.shields.io/badge/os-linux-green)\n[![License](https://img.shields.io/github/license/sohaibqasem/linux-create-cxx-project)](https://img.shields.io/github/license/sohaibqasem/linux-create-cxx-project)\n\n![Release](https://img.shields.io/github/v/release/sohaibqasem/linux-create-cxx-project?include_prereleases)\n\n\n\n\n# linux-create-cxx-project\neasy to use shell script using cmake to create c++ project\n\n\nCreate c++ project  works on Linux.\nIf something doesn’t work, please file an issue.\nIf you have questions or need help, please ask\n\n### Main fetures\n * Complie whatever you have written\n * Import static libraries to your project\n * Import shared libraries to your project\n### New\n * Generate static, shared libraries and link it to your projects\n * Add setup script for easy installation\n * manage the project throgh npm scripts \n\n## Getting Started\n\nThese instructions will get you a copy of the project up and running on your local machine for development and testing purposes.\n\n## OverView\n\n### Prerequisites\n\nyou will need to install **cmake**, **make**, **g++**, you can install these tools from your package manager\n\n* To check if a dependenciy installed\n```\n\u003ctoolName\u003e --version\n```\n## How to use\n\n```\nnpx linux-create-cxx-project \u003cappName\u003e\ncd \u003cappName-workSpace\u003e\nnpm start\nnpm run exe\n```\n\n## Install it locally\n  - clone it\n  - run\n    ```\n    cd linux-create-cxx-project\n    sudo ./setup.sh\n    cd \u0026\u0026 echo \"export PATH=\\$PATH:/usr/local/bin/linux-create-cxx-project\" \u003e\u003e .bashrc\n    ```\n  - navigate where you want to create the project and run:\n      ```\n      create-cplusplus-project.sh \u003capp-name\u003e\n      ```\n\nenjoy coding :rocket:\n\n### Use Cases\n* Navigate to what dir you want\n* run the script \nEx:\n```\nnpx linux-create-cxx-project \u003cappName\u003e\n```\n### To build and compile your code\n  ```\n  npm start\n  npm run exe\n  ```\n  \n### To build a release\n   ```\n   npm release\n   npm run exe\n   ```\n\n### To import static library\n   * Move header files to include dir\n   * Move xxx.a file to libs dir\n\n### To import dynamic library\n   * Move header files to include dir\n   * Move xxx.so file to libs dir\n     \n### To create a library\n  ```\n  npm run create-lib \u003clib-name\u003e \u003clib-type\u003e\n  ```\n       * lib types\n          - st \u003e\u003e static\n          - dy \u003e\u003e shared\n   - to build the library run \n     ```\n     npm run build-lib \u003clib-name\u003e\n     ```\n   - to build the library and link it run\n     ```\n     npm run build-lib \u003clib-name\u003e \u003capp-name\u003e\n     ```\n     Note: everytime you make change to the library you need to build it again\n   \n### C++ Project Structure\n  ```\n  \u003cappName-workSpace\u003e\n      \u003clib1\u003e\n          build/\n          include/\n          src/\n          ./build.sh\n      \u003clib2\u003e\n        .\n        .\n      \u003capp-name\u003e\n          build/\n          include/\n          libs/\n          src/\n              Main.cpp\n              .\n              .\n      scripts/\n              release.sh\n              start.sh\n              create-lib.sh\n              build-lib.sh\n  ```\n  \n## Built With\n\n* Shell script - used to generate the project structure and sample code\n\n## Contributing\n\nPlease read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.\n\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE) file for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsohaibqasem%2Flinux-create-cxx-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsohaibqasem%2Flinux-create-cxx-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsohaibqasem%2Flinux-create-cxx-project/lists"}