{"id":18593526,"url":"https://github.com/atiq-cs/cpp","last_synced_at":"2026-04-30T19:31:36.948Z","repository":{"id":65661546,"uuid":"596647561","full_name":"atiq-cs/cpp","owner":"atiq-cs","description":"All CPP Projects","archived":false,"fork":false,"pushed_at":"2023-04-03T17:11:57.000Z","size":5139,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-06-07T12:04:12.095Z","etag":null,"topics":["cpp","win32"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/atiq-cs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-02T16:32:42.000Z","updated_at":"2023-03-11T17:10:49.000Z","dependencies_parsed_at":"2025-02-17T21:52:13.989Z","dependency_job_id":null,"html_url":"https://github.com/atiq-cs/cpp","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/atiq-cs/cpp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atiq-cs%2Fcpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atiq-cs%2Fcpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atiq-cs%2Fcpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atiq-cs%2Fcpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/atiq-cs","download_url":"https://codeload.github.com/atiq-cs/cpp/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atiq-cs%2Fcpp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32475191,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["cpp","win32"],"created_at":"2024-11-07T01:12:47.882Z","updated_at":"2026-04-30T19:31:36.934Z","avatar_url":"https://github.com/atiq-cs.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"## C++ Projects\n\n### Generalized Build Instructions\n**Setup output directory**  \nFirst step is to create Dir for holding Binary Executables and Objects,\n\n    New-Item -Type Directory x64\\Release\n\n**Release Build**  \nIn this high level ReadMe doc, we don't provide the exact command lines, only provide customizations.\n\nCompile / link commands are presented in each directory per project type.\n- Console (Win32 Console Apps also fall under this)\n- Win32 (include resource compilation)\n- MFC\n\nCompile CL changes slight based on MBCS vs Unicode.\n\nFor MBCS (non Unicode) projects, please replace\n\n    /D \"_UNICODE\" /D \"UNICODE\"\n\nwith\n\n    /D \"_MBCS\"\n\nin above compile CL.\n\nLink CL (command line) is same for MBCS (non-Unicode) and Unicode.\n\n\n*Win UI: yet to figure out how to build and deploy!*\n\nTo note about the CLs provided in each dir,\n- CL above are based on Visual Studio 2022 (around 2023-01).\n- Linker includes some OS specific libraries which might not be necessary for cross-platform C++ projects.\n- CL is simplified based on file name or paths without space. Those strings need to be surrounded by quotes when space is present in them.\n\n\nAs per experience, cl, the compiler binary reports correct line number when an error is encountered,\n\n    $ cl /c /Zi /nologo /W4 /WX /diagnostics:column /O2 /GL /D WIN32 /D NDEBUG /D _WINDOWS /D _UNICODE /D UNICODE /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fox64\\Release\\ /Fdx64\\Release\\vc143.pdb /external:W4 /Gd /TP /FC *.cpp\n\n    Main.cpp\n    \n    cpp_all\\Win32\\OOP\\P03_Wnd\\Main.cpp(66,1): error C2220: the following warning is treated as an error\n    cpp_all\\Win32\\OOP\\P03_Wnd\\Main.cpp(57,1): note: while compiling class template member function 'BOOL BaseWindow\u003cMainWindow\u003e::Create(PCWSTR,DWORD,DWORD,int,int,int,int,HWND,HMENU)'\n    cpp_all\\Win32\\OOP\\P03_Wnd\\Main.cpp(183,3): note: see reference to function template instantiation 'BOOL BaseWindow\u003cMainWindow\u003e::Create(PCWSTR,DWORD,DWORD,int,int,int,int,HWND,HMENU)' being compiled\n    cpp_all\\Win32\\OOP\\P03_Wnd\\Main.cpp(128,1): note: see reference to class template instantiation 'BaseWindow\u003cMainWindow\u003e' being compiled\n    cpp_all\\Win32\\OOP\\P03_Wnd\\Main.cpp(66,1): warning C4302: 'type cast': truncation from 'LPWSTR' to 'WORD'\n\n\nThere was indeed an incorrect conversion in following in line 66,\n\n    wcex.hIcon = LoadIcon(NULL, MAKEINTRESOURCE(IDI_APPLICATION));\n\n\nHence, there is no reason to distrust the compiler.\n\nCommand line references are provided for 2 build types,\n- Debug\n- Release\n\n\n**Debug Builds**  \nFor debug builds, we need to create the debug dir,\n\n    New-Item -Type Directory x64\\Debug\n\n\n**Refs**  \n- [MSFT Docs - Walkthrough: Compile a C program on the command line](https://learn.microsoft.com/en-us/cpp/build/walkthrough-compile-a-c-program-on-the-command-line)\n- [MSFT Docs - Release Builds and Optimizations](https://learn.microsoft.com/en-us/cpp/build/release-builds)\n\n\n**gitignore Refs**  \n- '.gitignore': [GitHub C++ `.gitignore`](https://github.com/github/gitignore/blob/main/C%2B%2B.gitignore)\n- Single vs double asterisks, [henriquesd - The .gitignore File](https://henriquesd.medium.com/the-gitignore-file-dc293f6c80fb)\n- old repo, [OOP-Win32-CPP/.gitignore](https://github.com/atiq-cs/cpp/blob/dev/Win32/git_ignore.md)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatiq-cs%2Fcpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fatiq-cs%2Fcpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatiq-cs%2Fcpp/lists"}