Kan något hjälpa mig fixa ned bibliotek med en C++ och C pakethanterare?

Permalänk

Kan något hjälpa mig fixa ned bibliotek med en C++ och C pakethanterare?

Nu håller jag på med något riktigt spännande.
Jag har nämligen letat länge efter någon typ utav en pakethanterare som kan underhålla när det kommer till bibliotek för program. Det har fungerat klockrent i Java när man kört Maven eller Gradle. Men jag kör C och C++ för jag programmerar mycket som har med hårdvara att göra, ungefär.

Det jag vill göra är att jag vill få ImGui att fungera. Men att ladda ned massa C bibliotek så som OpenGL kan vara lite jobbigt. Men tack vare Conan så sköter Conan allt som har med C++ och C att göra.

För det första så har jag installerat:
- MinGW
- Eclipse CDT för C och C++ (Jag kan ingen annan IDE.... och Visual Studio Code är alldeles för blekt för mig)
- Conan via Python PIP

Så allt verkar grönt där. Det jag gör nu är att välja ett exempelprojekt här från ImGUI:
https://github.com/ocornut/imgui/tree/master/examples

Då ställer jag er några frågor:

1. Vilket projekt ska jag välja? Jag ser att det finns vissa projekt som har CMakeList.txt, Makefile och massa Visual-Studio-projekt. Jag antar att jag ska välja ett projekt som passar mitt operativsystem och som har CMakeList.txt eller Makefile?

2. Hur startar jag upp ett sådant projekt med Conan? Jag har tittat här men jag förstår inte vad han får "options" och "imports" ifrån. https://youtu.be/O2E-W9P-jKc?t=296 Jag antar att man ska anropa "conanfile.txt" med kommandot "conan" i kommandotolken?

Om det är någon som har någon kunskap som löser detta problem, t.ex. någon som vet ett alternativ till Conan, så är jag redo att byta då jag har inte investerat min tid på Conan så mycket.

Permalänk
Medlem
Skrivet av heretic16:

1. Vilket projekt ska jag välja? Jag ser att det finns vissa projekt som har CMakeList.txt, Makefile och massa Visual-Studio-projekt. Jag antar att jag ska välja ett projekt som passar mitt operativsystem och som har CMakeList.txt eller Makefile?

Är du införstådd i vad ImGui gör? Du ska välja ett projekt efter vilken platform/API du tänker köra. Har du en motor eller skriver du en från början?

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Skrivet av Phod:

Är du införstådd i vad ImGui gör? Du ska välja ett projekt efter vilken platform/API du tänker köra. Har du en motor eller skriver du en från början?

Jag vet att ImGui renderar hela tiden i en oändlig while-loop. Jag har inga problem med det.
Jag finner att ImGui är något lite enklare att skriva GUI-kod med C++, än andra bibliotek.

Jag tänkte använda OpenGL, om det går bra?

Vi säger att jag tar detta exempel:
https://github.com/ocornut/imgui/tree/master/examples/example...

GLFW och OpenGL3. Dom måste jag installera först via Conan?
Hur gör jag med Makefile som finns där?

Permalänk
Medlem
Skrivet av heretic16:

Jag vet att ImGui renderar hela tiden i en oändlig while-loop. Jag har inga problem med det.

Nästan. Du skriver koden som renderar:

It outputs optimized vertex buffers that you can render anytime in your 3D-pipeline-enabled application.

Skrivet av heretic16:

Jag finner att ImGui är något lite enklare att skriva GUI-kod med C++, än andra bibliotek.

Jag tänkte använda OpenGL, om det går bra?

OK, då läser du på om backends. Eftersom du verkar köra Linux så är väl GLFW eller SDL2 lämpliga. Och sedan OpenGL, då har du example_glfw_opengl2 och example_glfw_opengl3. Stirra dig inte blind på VS-projekten, ditt mål att är att bygga koden på Linux, och det finns makefiles.

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Skrivet av Phod:

Nästan. Du skriver koden som renderar:

It outputs optimized vertex buffers that you can render anytime in your 3D-pipeline-enabled application.

OK, då läser du på om backends. Eftersom du verkar köra Linux så är väl GLFW eller SDL2 lämpliga. Och sedan OpenGL, då har du example_glfw_opengl2 och example_glfw_opengl3. Stirra dig inte blind på VS-projekten, ditt mål att är att bygga koden på Linux, och det finns makefiles.

Jag kör långt ifrån Linux. Jag kör Windows 11.

Okej. SDL2 och GLFW. Då har jag ju krossplattform. Allt från Windows till Android.
https://github.com/ocornut/imgui/tree/master/examples/example...

Då laddar jag ned detta exempel. Men jag har Eclipse IDE, så jag lär inte kunna använda denna Makefile?

Permalänk
Medlem
Skrivet av heretic16:

Jag kör långt ifrån Linux. Jag kör Windows 11.

Okej. SDL2 och GLFW. Då har jag ju krossplattform. Allt från Windows till Android.
https://github.com/ocornut/imgui/tree/master/examples/example...

Då laddar jag ned detta exempel. Ska jag undvika alla filer, utom main.cpp samt Makefile?

Jag vet inte hur du tänker bygga det. Själv kör jag Visual Studio, och skulle ha satt upp ett projekt som bygger koden. Du kan ju kolla i build_win32.bat hur de sätter upp argumenten till kompilatorn.

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Skrivet av Phod:

Jag vet inte hur du tänker bygga det. Själv kör jag Visual Studio, och skulle ha satt upp ett projekt som bygger koden. Du kan ju kolla i build_win32.bat hur de sätter upp argumenten till kompilatorn.

Men handlar det inte bara om att köra denna main.cpp kod?
https://github.com/ocornut/imgui/blob/master/examples/example...

Jag menar? Måste man ha en Makefile till att börja med?
Målet är väll bara att klistra in denna main.cpp i ett projekt och sedan se till så dessa finns installerat på datorn?

#include "imgui.h" #include "imgui_impl_sdl.h" #include "imgui_impl_opengl3.h" #include <stdio.h> #include <SDL.h> #if defined(IMGUI_IMPL_OPENGL_ES2) #include <SDL_opengles2.h> #else #include <SDL_opengl.h> #endif

Som jag uppfattar det, så är det bara sdl och opengl version 3 som jag behöver från conan. Hur kan jag installera sdl och opengl från conan?

Permalänk
Medlem

Förvirrande tråd och lite diskussionsvärde.

https://github.com/ocornut/imgui/blob/master/docs/EXAMPLES.md hittar du följande:

Citat:

Miscellaneous

Building

Unfortunately nowadays it is still tedious to create and maintain portable build files using external libraries (the kind we're using here to create a window and render 3D triangles) without relying on third party software and build systems. For most examples here we choose to provide:

  • Makefiles for Linux/OSX

  • Batch files for Visual Studio 2008+

  • A .sln project file for Visual Studio 2012+

  • Xcode project files for the Apple examples Please let us know if they don't work with your setup! You can probably just import the imgui_impl_xxx.cpp/.h files into your own codebase or compile those directly with a command-line compiler.

I makefilen hittar du kommentarer som "# Cross Platform Makefile # Compatible with MSYS2/MINGW, Ubuntu 14.04.1 and Mac OS X".

Vilka verktyg du sen vill använda till egna projekt (om några) är något helt annat.

Permalänk
Medlem
Skrivet av heretic16:

Men handlar det inte bara om att köra denna main.cpp kod?
https://github.com/ocornut/imgui/blob/master/examples/example...

Jag menar? Måste man ha en Makefile till att börja med?
Målet är väll bara att klistra in denna main.cpp i ett projekt och sedan se till så dessa finns installerat på datorn?

[...]

Som jag uppfattar det, så är det bara sdl och opengl version 3 som jag behöver från conan. Hur kan jag installera sdl och opengl från conan?

Du vill bygga den koden, och för att köra det måste du installera GLFW och ImGui, samt instruera kompilatorn var den hittar header- och library-filer. Som jag förstår det så är detta vad Conan ska sköta åt dig. Om man kollar litet snabbt på Getting Started-dokumentationen så har de ett exempel för hur man integrerar med CMake för att sätta upp de variabler du behöver.

Hur ser projekten ut i Eclipse? Vilket system använder de för att bygga?

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Medlem
Skrivet av Petterk:

Förvirrande tråd och lite diskussionsvärde.

Om man inte har erfarenhet av C/C++, ja. Men det är ju ganska mycket diskussionsvärde om man är intresserad av att sätta upp en build chain för ImGui på GLFW/OpenGL.

Det @heretic vill göra är inte jättesvårt, men man måste ha koll på grunderna.

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Skrivet av Phod:

Du vill bygga den koden, och för att köra det måste du installera GLFW och ImGui, samt instruera kompilatorn var den hittar header- och library-filer. Som jag förstår det så är detta vad Conan ska sköta åt dig. Om man kollar litet snabbt på Getting Started-dokumentationen så har de ett exempel för hur man integrerar med CMake för att sätta upp de variabler du behöver.

Hur ser projekten ut i Eclipse? Vilket system använder de för att bygga?

Eclipse kan använda CMake. Så det blir en så kallad CMakeLists.txt när man skapar ett projekt.

Okej! Jag skapar en conanfile.txt. Jag placerar den i samma mapp som CMakeLists.txt finns

[requires] imgui/1.88 opengl/system sdl/2.24.1 [generators] cmake

Jag antar att dessa paket behöver jag. cmake behöver jag till CMakeLists.txt

Permalänk
Skrivet av Phod:

Om man inte har erfarenhet av C/C++, ja. Men det är ju ganska mycket diskussionsvärde om man är intresserad av att sätta upp en build chain för ImGui på GLFW/OpenGL.

Det @heretic vill göra är inte jättesvårt, men man måste ha koll på grunderna.

Språket har jag inga problem med. Jag har kodat i C och C++ i flera år utan att ens behöva röra konfigurationsfiler. Jag har alltid haft IDE-verktyg som har gjort detta jobb åt mig. Visual Studio .NET Express samt Eclipse har alltid varit till hands.

Permalänk
Medlem
Skrivet av Phod:

Hur ser projekten ut i Eclipse? Vilket system använder de för att bygga?

På Windows blir det ju MSYS2/MinGW om du inte vill köra VS2008+.

Det är inte några problem att använda MSYS2/MinGW ihop med Make, med Eclipse. Nog för att Eclipse (IDE) är irrelevant för att bygga exemplen.

Permalänk
Skrivet av Petterk:

På Windows blir det ju MSYS2/MinGW om du inte vill köra VS2008+.

Det är inte några problem att använda MSYS2/MinGW ihop med Make, med Eclipse. Nog för att Eclipse (IDE) är irrelevant för att bygga exemplen.

Men handlar det inte om att köra main.cpp filen? Jag har kört många C projekt som jag själv har gjort, som inte har någon makefile.

Permalänk
Medlem
Skrivet av heretic16:

Eclipse kan använda CMake. Så det blir en så kallad CMakeLists.txt när man skapar ett projekt.

Okej! Jag skapar en conanfile.txt. Jag placerar den i samma mapp som CMakeLists.txt finns

[requires] imgui/1.88 opengl/system sdl/2.24.1 [generators] cmake

Jag antar att dessa paket behöver jag. cmake behöver jag till CMakeLists.txt

Då ska du vara redo att bygga med CMake, enligt Conans Getting Started.

Skrivet av heretic16:

Språket har jag inga problem med. Jag har kodat i C och C++ i flera år utan att ens behöva röra konfigurationsfiler. Jag har alltid haft IDE-verktyg som har gjort detta jobb åt mig. Visual Studio .NET Express samt Eclipse har alltid varit till hands.

Jo, ett IDE underlättar men det döljer också hur det fungerar bakom. När jag började med C och C++ fick man skriva makefiles eller använda autotools.

Skrivet av heretic16:

Men handlar det inte om att köra main.cpp filen? Jag har kört många C projekt som jag själv har gjort, som inte har någon makefile.

Du kör inte .cpp-filer, du bygger dem till en exekverbar fil. För att köra detta måste du tala om var kompilatorn hittar externa dependencies som du använder dig av. Det Conan gör för dig är att hantera dependencies och hjälper dig att sätta upp allting för CMake.

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Skrivet av Phod:

Då ska du vara redo att bygga med CMake, enligt Conans Getting Started.

Jo, ett IDE underlättar men det döljer också hur det fungerar bakom. När jag började med C och C++ fick man skriva makefiles eller använda autotools.

Du kör inte .cpp-filer, du bygger dem till en exekverbar fil. För att köra detta måste du tala om var kompilatorn hittar externa dependencies som du använder dig av. Det Conan gör för dig är att hantera dependencies och hjälper dig att sätta upp allting för CMake.

Men då är det lika bra att jag lär mig CMake istället för Makefile?
CMake passar väll alla operativsystem? För jag vill helst lära mig något som är krossplattform.

Hur som helst. Jag tror jag förstår lite bättre.
Jag skapade ett CMake projekt i Eclipse och då blev det automatiskt en CMakeLists.txt fil.

När jag skapade min conanfil.txt och lade in massa paketnamn där. Sedan cd jag till mappen "build" och skrev följande

C:\Users\aaa\eclipse-workspace\Test2\build>conan install .. Configuration: [settings] arch=x86_64 arch_build=x86_64 build_type=Release compiler=gcc compiler.libcxx=libstdc++11 compiler.version=12 os=Windows os_build=Windows [options] [build_requires] [env] conanfile.txt: Installing package Requirements imgui/1.88 from 'conancenter' - Cache libiconv/1.17 from 'conancenter' - Cache opengl/system from 'conancenter' - Cache sdl/2.24.1 from 'conancenter' - Cache Packages imgui/1.88:b6dcf777b65d2caecb776a44276a03a082ff40c9 - Missing libiconv/1.17:7e4fe5e99aec5cc8f78973ab8ce64613ed35677c - Missing opengl/system:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download sdl/2.24.1:2fb8b988e7ce7b5320589abd7d25ea1e1b4bebf1 - Missing Installing (downloading, building) binaries... ERROR: Missing binary: imgui/1.88:b6dcf777b65d2caecb776a44276a03a082ff40c9 ERROR: Missing binary: libiconv/1.17:7e4fe5e99aec5cc8f78973ab8ce64613ed35677c ERROR: Missing binary: sdl/2.24.1:2fb8b988e7ce7b5320589abd7d25ea1e1b4bebf1 imgui/1.88: WARN: Can't find a 'imgui/1.88' package for the specified settings, options and dependencies: - Settings: arch=x86_64, build_type=Release, compiler=gcc, compiler.libcxx=libstdc++11, compiler.version=12, os=Windows - Options: shared=False - Dependencies: - Requirements: - Package ID: b6dcf777b65d2caecb776a44276a03a082ff40c9 ERROR: Missing prebuilt package for 'imgui/1.88', 'libiconv/1.17', 'sdl/2.24.1' Use 'conan search imgui/1.88@ --table=table.html -r=remote' and open the table.html file to see available packages Or try to build locally from sources with '--build=imgui --build=libiconv --build=sdl' More Info at 'https://docs.conan.io/en/latest/faq/troubleshooting.html#erro...' C:\Users\aaa\eclipse-workspace\Test2\build>

Så det verkar som att Conan inte verkar hitta något. Skumt. Dessa finns på deras hemsida.

Jag har även GCC installerat

C:\Users\aaa\eclipse-workspace\Test2\build>gcc --version gcc (x86_64-win32-seh-rev1, Built by MinGW-W64 project) 12.2.0 Copyright (C) 2022 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. C:\Users\aaa\eclipse-workspace\Test2\build>

Permalänk
Medlem
Skrivet av heretic16:

imgui/1.88: WARN: Can't find a 'imgui/1.88' package for the specified settings, options and dependencies: - Settings: arch=x86_64, build_type=Release, compiler=gcc, compiler.libcxx=libstdc++11, compiler.version=12, os=Windows

Om du kollar på imgui/1.88 i "ConanCenter" så har de bara paket för konfigurationen OS: Windows, Architechture: x86_64, Compiler: Visual Studio.

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Skrivet av Phod:

Om du kollar på imgui/1.88 i "ConanCenter" så har de bara paket för konfigurationen OS: Windows, Architechture: x86_64, Compiler: Visual Studio.

Compiler...Visual Studio? VS är väll en IDE?

Aja...Vad gör jag här liksom?
Byter till Visual Studio IDE?

Permalänk
Medlem
Skrivet av heretic16:

Men då är det lika bra att jag lär mig CMake istället för Makefile?
CMake passar väll alla operativsystem? För jag vill helst lära mig något som är krossplattform.

Hur som helst. Jag tror jag förstår lite bättre.
Jag skapade ett CMake projekt i Eclipse och då blev det automatiskt en CMakeLists.txt fil.

När jag skapade min conanfil.txt och lade in massa paketnamn där. Sedan cd jag till mappen "build" och skrev följande

C:\Users\aaa\eclipse-workspace\Test2\build>conan install .. Configuration: [settings] arch=x86_64 arch_build=x86_64 build_type=Release compiler=gcc compiler.libcxx=libstdc++11 compiler.version=12 os=Windows os_build=Windows [options] [build_requires] [env] conanfile.txt: Installing package Requirements imgui/1.88 from 'conancenter' - Cache libiconv/1.17 from 'conancenter' - Cache opengl/system from 'conancenter' - Cache sdl/2.24.1 from 'conancenter' - Cache Packages imgui/1.88:b6dcf777b65d2caecb776a44276a03a082ff40c9 - Missing libiconv/1.17:7e4fe5e99aec5cc8f78973ab8ce64613ed35677c - Missing opengl/system:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download sdl/2.24.1:2fb8b988e7ce7b5320589abd7d25ea1e1b4bebf1 - Missing Installing (downloading, building) binaries... ERROR: Missing binary: imgui/1.88:b6dcf777b65d2caecb776a44276a03a082ff40c9 ERROR: Missing binary: libiconv/1.17:7e4fe5e99aec5cc8f78973ab8ce64613ed35677c ERROR: Missing binary: sdl/2.24.1:2fb8b988e7ce7b5320589abd7d25ea1e1b4bebf1 imgui/1.88: WARN: Can't find a 'imgui/1.88' package for the specified settings, options and dependencies: - Settings: arch=x86_64, build_type=Release, compiler=gcc, compiler.libcxx=libstdc++11, compiler.version=12, os=Windows - Options: shared=False - Dependencies: - Requirements: - Package ID: b6dcf777b65d2caecb776a44276a03a082ff40c9 ERROR: Missing prebuilt package for 'imgui/1.88', 'libiconv/1.17', 'sdl/2.24.1' Use 'conan search imgui/1.88@ --table=table.html -r=remote' and open the table.html file to see available packages Or try to build locally from sources with '--build=imgui --build=libiconv --build=sdl' More Info at 'https://docs.conan.io/en/latest/faq/troubleshooting.html#erro...' C:\Users\aaa\eclipse-workspace\Test2\build>

Så det verkar som att Conan inte verkar hitta något. Skumt. Dessa finns på deras hemsida.

Jag har även GCC installerat

C:\Users\aaa\eclipse-workspace\Test2\build>gcc --version gcc (x86_64-win32-seh-rev1, Built by MinGW-W64 project) 12.2.0 Copyright (C) 2022 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. C:\Users\aaa\eclipse-workspace\Test2\build>

Varför läser du inte filerna du länkar? Hämta hem imgui (med Git I guess) så hämtar du också exemplet. När du står i exemplets katalog du ska bygga kör du typ mingw32-make.exe så läser den makefilen, och vet att imgui-koden ligger ett par träd uppåt i katalogstrukturen.

Enligt exemplet du länkade tidigare behöver du nog också glfw, och mesa (opengl) (edit: stryker den, kollade igen och det ser bara ut som den letar efter opengl32.dll som är en del av Windows och i det här fallet så vet jag inte om det gör någon skillnad med opengl32.dll från mesa eller från Windows) då gdi32 och imm32 är en del Windows och de andra inte. MSYS2 och pacman bör hjälpa dig att ta ner allt du behöver.

När du har verktygen på plats (och konfigurerat Eclipse) så kan du också importera projektet/makefilen till Eclipse.

Permalänk
Skrivet av Petterk:

Varför läser du inte filerna du länkar? Hämta hem imgui (med Git I guess) så hämtar du också exemplet. När du står i exemplets katalog du ska bygga kör du typ mingw32-make.exe så läser den makefilen, och vet att imgui-koden ligger ett par träd uppåt i katalogstrukturen.

Enligt exemplet du länkade tidigare behöver du nog också glfw, och mesa (opengl) då gdi32 och imm32 är en del Windows och de andra inte. MSYS2 och pacman bör hjälpa dig att ta ner allt du behöver.

När du har verktygen på plats (och konfigurerat Eclipse) så kan du också importera projektet/makefilen till Eclipse.

Finns det inget standardsätt jag kan använda?
Jag kan offra Eclipse IDE mot Visual Studio och GCC mot MSVC om det så önskas.

Det ska vara så enkelt som möjligt att få igång ImGui. Nu känns det som att jag spiller dagar för att lära mig få igång ImGui.

Permalänk
Medlem
Skrivet av heretic16:

Compiler...Visual Studio? VS är väll en IDE?

Aja...Vad gör jag här liksom?
Byter till Visual Studio IDE?

Visual Studio har MSBuild. Conan har ett exempel för ImGui där de använder Visual Studio, så det känns som den enkla vägen. Annars blir det till att läsa på om Conan.

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Medlem
Skrivet av heretic16:

Finns det inget standardsätt jag kan använda?
Jag kan offra Eclipse IDE mot Visual Studio och GCC mot MSVC om det så önskas.

Det ska vara så enkelt som möjligt att få igång ImGui. Nu känns det som att jag spiller dagar för att lära mig få igång ImGui.

Googla så hittar du hur du sätter upp MSYS2 och Eclipse. Ser inte hur det skulle vara enklare med VS förutom att bat-filen redan pekar till glfw.

Enda kravet står som sagt i makefilens kommentarer när du installerat MSYS2 är att du kör "pacman -S --noconfirm --needed mingw-w64-x86_64-toolchain mingw-w64-x86_64-glfw" för att installera MinGW (alltså GCC) och glfw.

Permalänk
Skrivet av Phod:

Visual Studio har MSBuild. Conan har ett exempel för ImGui där de använder Visual Studio, så det känns som den enkla vägen. Annars blir det till att läsa på om Conan.

Men då installerar jag Visual Studio om det är standardlösningen för ImGui.
Community Edition blir bra.

Några frågor till dig som är en van VS-användare:
1. Kan jag köra C-kod i VS?
2. Kan jag analysera om jag överindexerar arrayer i VS? Typ som man kan göra med Valgrind
3. Kan jag sätta standarder t.ex. C99 i VS?
4. Om jag har gjort ett projekt i VS och jag vill använda detta projekt i Eclipse. Då behöver jag inte kopiera och klistra in koden i Eclipse från VS? Det är nämligen så att vissa projekt i Eclipse kör varken Makefile eller CMake.

Permalänk
Skrivet av Petterk:

Googla så hittar du hur du sätter upp MSYS2 och Eclipse. Ser inte hur det skulle vara enklare med VS förutom att bat-filen redan pekar till glfw.

Enda kravet står som sagt i makefilens kommentarer när du installerat MSYS2 är att du kör "pacman -S --noconfirm --needed mingw-w64-x86_64-toolchain mingw-w64-x86_64-glfw" för att installera MinGW (alltså GCC) och glfw.

Låter som bara mer krångel kommer finna sig på min skärm.

Jag tror jag helt enkelt få lära mig Visual Studio om ImGui tjurar med att dom vägrar vara portabel med Windows och GCC tillsammans.

Fast nu när jag har Visual Studio...då kanske jag ska använda VCPKG istället för Conan?

Permalänk
Medlem

Känns konstigt att ens säga det, du har missat vad imgui är om du tror det finns någon standardlösning. Jag tror inte Conan platsar, du behöver inte hämta imgui via Conan.

Vill du leka läs filerna och kommentarerna som imgui har.

Permalänk
Skrivet av Petterk:

Känns konstigt att ens säga det, du har missat vad imgui är om du tror det finns någon standardlösning.

Vill du leka läs filerna och kommentarerna som imgui har.

Orsaken varför jag väljer ImGui har med att QT som jag körde innan tyckte jag hade brist på grafisk hantering av realtidsuppdatering med grafer, databasstöd var horribelt dåligt och tableView var otroligt segt.

QT var bra...men en föråldrad teknologi. Framtiden med QT är QML, men jag tycker det verkar bökigt, dessutom dålig stöd till tableView även där också.

Så jag fick leta efter nytt bibliotek där man skriver mindre kod för att få saker gjort.

Permalänk
Medlem
Skrivet av heretic16:

Orsaken varför jag väljer ImGui har med att QT som jag körde innan tyckte jag hade brist på grafisk hantering av realtidsuppdatering med grafer, databasstöd var horribelt dåligt och tableView var otroligt segt.

QT var bra...men en föråldrad teknologi. Framtiden med QT är QML, men jag tycker det verkar bökigt, dessutom dålig stöd till tableView även där också.

Så jag fick leta efter nytt bibliotek där man skriver mindre kod för att få saker gjort.

Fast det är nog det många inte får ihop av alla dina trådar?

Hur skulle OpenGL vara enklare än Qt Quick/QML (som också har ett designerverktyg där du kan göra mycket grafiskt/visuellt)?

Vill du bygga exemplet du länkade så behöver du köra en eller två kommandon i CLI – även om du kör VS.

Permalänk

Nu har jag installerat VS och jag har installerat ImGui, GLFW och OpenGL3. Superenkelt med VCPKG.

C:\Users\aaa\GitHub\vcpkg>vcpkg list glfw3:x86-windows 3.3.8#1 GLFW is a free, Open Source, multi-platform libr... imgui:x86-windows 1.88#1 Bloat-free Immediate Mode Graphical User interfa... opengl:x86-windows 2022-03-14#1 Open Graphics Library (OpenGL)[3][4][5] is a cro... vcpkg-cmake-config:x64-windows 2022-02-06#1 vcpkg-cmake:x64-windows 2022-10-30 C:\Users\aaa\GitHub\vcpkg>

När jag testar klistra in denna fil i ett vanligt konsol-projekt
https://github.com/ocornut/imgui/blob/master/examples/example...

Så ser det ut så här:

Build started... 1>------ Build started: Project: Test, Configuration: Debug x64 ------ 1>Test.cpp 1>C:\Users\dmn\VS\Test\Test\Test\Test.cpp(6,10): fatal error C1083: Cannot open include file: 'imgui.h': No such file or directory 1>Done building project "Test.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Jaha? Hade jag inte installerat imgui?

Permalänk
Medlem
Skrivet av heretic16:

Nu har jag installerat VS och jag har installerat ImGui, GLFW och OpenGL3. Superenkelt med VCPKG.

C:\Users\aaa\GitHub\vcpkg>vcpkg list glfw3:x86-windows 3.3.8#1 GLFW is a free, Open Source, multi-platform libr... imgui:x86-windows 1.88#1 Bloat-free Immediate Mode Graphical User interfa... opengl:x86-windows 2022-03-14#1 Open Graphics Library (OpenGL)[3][4][5] is a cro... vcpkg-cmake-config:x64-windows 2022-02-06#1 vcpkg-cmake:x64-windows 2022-10-30 C:\Users\aaa\GitHub\vcpkg>

När jag testar klistra in denna fil i ett vanligt konsol-projekt
https://github.com/ocornut/imgui/blob/master/examples/example...

Så ser det ut så här:
https://i.postimg.cc/cHYZ65YF/Sk-rmbild-2022-11-08-012139.png

Build started... 1>------ Build started: Project: Test, Configuration: Debug x64 ------ 1>Test.cpp 1>C:\Users\dmn\VS\Test\Test\Test\Test.cpp(6,10): fatal error C1083: Cannot open include file: 'imgui.h': No such file or directory 1>Done building project "Test.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Jaha? Hade jag inte installerat imgui?

bat-filen....

Permalänk
Medlem
Skrivet av heretic16:

Nu har jag installerat VS och jag har installerat ImGui, GLFW och OpenGL3. Superenkelt med VCPKG.

C:\Users\aaa\GitHub\vcpkg>vcpkg list glfw3:x86-windows 3.3.8#1 GLFW is a free, Open Source, multi-platform libr... imgui:x86-windows 1.88#1 Bloat-free Immediate Mode Graphical User interfa... opengl:x86-windows 2022-03-14#1 Open Graphics Library (OpenGL)[3][4][5] is a cro... vcpkg-cmake-config:x64-windows 2022-02-06#1 vcpkg-cmake:x64-windows 2022-10-30 C:\Users\aaa\GitHub\vcpkg>

När jag testar klistra in denna fil i ett vanligt konsol-projekt
https://github.com/ocornut/imgui/blob/master/examples/example...

Så ser det ut så här:
https://i.postimg.cc/cHYZ65YF/Sk-rmbild-2022-11-08-012139.png

Build started... 1>------ Build started: Project: Test, Configuration: Debug x64 ------ 1>Test.cpp 1>C:\Users\dmn\VS\Test\Test\Test\Test.cpp(6,10): fatal error C1083: Cannot open include file: 'imgui.h': No such file or directory 1>Done building project "Test.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Jaha? Hade jag inte installerat imgui?

Du får ursäkta om en utomstående bryter sig in här och ursäkta om jag låter framfusig nu men det känns som om du borde lägga mindre tid på att kasta dig över nya utvecklingsmiljöer och mer tid på att förstå det du har framför dig.

Att kompilera i ett fall som detta är i grunden inte så svårt - du ska få din kompilator att kompilera ett antal C++-filer från imgui och troligen en eller flera du skrivit själv. Sen ska de länkas samman till en körbar binär. Makefiler och projektfiler är bara sätt att styra kompilatorn så du inte behöver göra allt manuellt.

Felmeddelandet säger att din kompilator såsom den är uppsatt inte hittar en header-fil. Det är ett vanligt problem och troligen lätt att lösa om du bara tar det lugnt och försöker förstå vad du gör.

Är alla pathar rätt? Det ser ut att vara minst två olika grundpathar i det du klistrade in ( C:\Users\aaa\ och C:\Users\dmn\ ) t.ex.