Git Product home page Git Product logo

Comments (36)

highway900 avatar highway900 commented on May 31, 2024 2

Amazing Project @CedricGuillemet I have just started playing with building in a ubuntu:18.04 docker container. Which version of Ubuntu did you use to compile against?

I would be happy to follow through with build bot if you can share some build specifics with me.

(note: I am not the greatest C++ person)

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024 1

Yes, I broke the linux build with emscripten. Fixing it now.

from imogen.

axredneck avatar axredneck commented on May 31, 2024 1

@nafergo any plans for compile from sources first, the rest later.

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024 1

It crashes because it doesn't find the font file. In your terminal run the app from the bin directory

from imogen.

axredneck avatar axredneck commented on May 31, 2024 1

Thank You, it works!

from imogen.

mattrei avatar mattrei commented on May 31, 2024

yes please that would be great to have a guid for linux or even compiled binaries!

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024

I still have hope to find a contributor for the Mac/Linux port :)

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024

Hi
Thank you for putting some time in the project :)
I tried with a Centos 7 virtual machine (a long time ago).
Most of the effort I put was in the cmake file. It needs a couple packages: libSDL-dev, opengl,...
Since that test I may have added some non cross platform. Let me know if that happens, I'll fix that quickly.

from imogen.

highway900 avatar highway900 commented on May 31, 2024

So I am back.
I have setup a build pipeline using azure pipeline. This is pretty fast and free for open source applications. It also supports Windows, OSX and Linux which is nice, cos no one really support OSX.

https://dev.azure.com/highway900/Imogen/_build/results?buildId=4

That is the build result with a fairly vanilla cut of master. The only change is setting the C++ standard to 17. This fixed numerous build errors like using auto.

The current errors can be fixed by including math.h but I assume that this is done some other way with VS? This is pretty interesting to me, cpp build systems are not my strong suite.

I can invite you to the azure project, or you could start one for the project. I just thought it might be an easy way to run the builds and create some release/build artifacts for many platforms automatically.

Cheers.

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024

That looks nice! Is there a way to not create a repo on azure but use github instead?

from imogen.

highway900 avatar highway900 commented on May 31, 2024

The azure build system just points at my github fork of Imogen :) So there is no azure repository that I know of. I did allow access to azure to my fork.
You can also manage the configuration yml file from inside the github repo.

from imogen.

highway900 avatar highway900 commented on May 31, 2024

As far as I can tell the version of pyconfig.h is generated by python configure system (or copied from PC/pyconfig.h) in the cpython source. The version included in imogen is for VS c++ or wacom compiler specifically. The file is ignored in the cpython source

I will try to compile with the linux python3.7-dev package instead.

from imogen.

highway900 avatar highway900 commented on May 31, 2024

Compiling with an installed version of python3.7 and package lookup in CMakeLists fixed the python dependency.

Now the compiler semantics are appearing. I get a different set of errors for GCC and Clang. I will focus on Clang at the moment in the hope that translates to OSX easier. Changing the C++ standard (11, 14, 17) also generates a variety of different errors. I am currently using 14 as 17 causes errors with pybind, which fits VS the best?

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024

I don't know. I use vs2017 default settings. Focusing on Clang is a good idea.

from imogen.

axredneck avatar axredneck commented on May 31, 2024

I just tried to build current "dev-0.14" branch and got this error:
/home/redneck/programs/Imogen/src/EvaluationContext.cpp:26:10: fatal error: SDL.h: No such file or directory
#include <SDL.h>
though i have such file (/usr/include/SDL/SDL.h).
Arch Linux.

from imogen.

highway900 avatar highway900 commented on May 31, 2024

from imogen.

axredneck avatar axredneck commented on May 31, 2024

Trying to compile dev-0.14 branch:
/home/redneck/programs/Imogen/src/Platform.h:101:2: error: #error unknown platform
#error unknown platform

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024

What's your compiler/OS? The platform.h sets the configuration and enables features based on the target. Currently, only Windows thru MSVC and emscripten are supported.

from imogen.

axredneck avatar axredneck commented on May 31, 2024

@CedricGuillemet Arch Linux as before, GCC 8.3.0

from imogen.

unfa avatar unfa commented on May 31, 2024

Hey! Are you looking for help with the Linux port?

I'm no developer but I could help with testing.

I'm a graphic designer and I'm really excited to see Imogen being a thing, as I want to make procedural PBR materials, but I don't want to become Adobe's servant for this.
I used to use MapZone2 back in the day, before Allegorhytmic rebranded it into Substance Dsigner (I guess) and was bought by Adobe - it was awesome. I'm trying to make materials with Blender, but it's really difficult - getting a tiling noise texture is an endeavour on it's own, ad blurring the maps is actually only possible with a dirty and cmoputationally exansive hack. Also creating any geometric shapes requires modelling, so it's not trival to make a simple Diamond plate material.

I'd be really excited to help you develop the Linux port of Imogen (the web build doens't seem to work well for me).

I'm running Ryzen 7 1700 / GTX 1060 6GB / 32GB RAM and Manjaro Linux.

from imogen.

unfa avatar unfa commented on May 31, 2024

I've truied building the newest git code on Linux, as well as the latest release. No success so far.

Building the latest release I get this error:

/data/Applications/Imogen-0.13.0/ext/python37/include/pyconfig.h:59:10: fatal error: io.h: No such file or directory
 #include <io.h>
          ^~~~~~
compilation terminated.

from imogen.

unfa avatar unfa commented on May 31, 2024

Trying to compile dev-0.14 branch:
/home/redneck/programs/Imogen/src/Platform.h:101:2: error: #error unknown platform
#error unknown platform

I think I have the same issue:
#68

from imogen.

nafergo avatar nafergo commented on May 31, 2024

Any plans for appimage releases?

from imogen.

axredneck avatar axredneck commented on May 31, 2024

Now it compiles but crashes:

Imogen: /home/redneck/programs/Imogen/ext/imgui_draw.cpp:1623: ImFont* ImFontAtlas::AddFontFromFileTTF(const char*, float, const ImFontConfig*, const ImWchar*): Assertion `0' failed.

from imogen.

axredneck avatar axredneck commented on May 31, 2024

Doesn't compile again

CMake Error at ext/bgfx/cmake/3rdparty/glsl-optimizer.cmake:55 (list):
  list sub-command REMOVE_ITEM requires two or more arguments.
Call Stack (most recent call first):
  ext/bgfx/cmake/tools/shaderc.cmake:14 (include)
  ext/bgfx/cmake/tools.cmake:17 (include)
  ext/bgfx/CMakeLists.txt:61 (include)

Arch Linux, Imogen dev-0.14 branch.

from imogen.

leiserfg avatar leiserfg commented on May 31, 2024

Try updating the submodules.

from imogen.

axredneck avatar axredneck commented on May 31, 2024

Try updating the submodules

Already tried with no success.

from imogen.

leiserfg avatar leiserfg commented on May 31, 2024

Apparently, something is broken with bgfx, because I updated the submodules and now is failing for me also.

from imogen.

leiserfg avatar leiserfg commented on May 31, 2024

The error I'm getting is because of this change in bgfx
bkaradzic/bgfx@855623e

from imogen.

leiserfg avatar leiserfg commented on May 31, 2024

I'm not sure (I didn't read all the imogen code) but maybe will be healthier to use Vulkan directly, cause bgfx is doing api changes. You can use vukan on linux and windows and MolteVk or similar on macos.

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024

I can't reproduce the issue with cmakegui + msvc :(

from imogen.

leiserfg avatar leiserfg commented on May 31, 2024

It happens if you update the submodules recursively cause they are making changes on bgfx, check

bkaradzic/bgfx@855623e

from imogen.

leiserfg avatar leiserfg commented on May 31, 2024

Can be fixed just by replacing VertexDecl with VertexLayout.

from imogen.

leiserfg avatar leiserfg commented on May 31, 2024

But then I started to get more bgfx errors, updating the submodules was a bad idea.

from imogen.

CedricGuillemet avatar CedricGuillemet commented on May 31, 2024

I've pushed an update. let if know if it solves something

from imogen.

axredneck avatar axredneck commented on May 31, 2024

I did git pull origin dev-0.14 and git submodule update, still the same issue:

CMake Error at ext/bgfx/cmake/3rdparty/glsl-optimizer.cmake:55 (list):
  list sub-command REMOVE_ITEM requires two or more arguments.

from imogen.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.