AppImages of v0.18 release builds

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Thu Aug 29, 2019 1:59 pm

looo wrote:
Wed Aug 28, 2019 8:14 pm
edit: I had a look at the recipe and tried to build for linux, but configuration fails with:
This is a toolchain related issue. I am not familiar with conda-forge, but speaking in general and looking in meta.yaml file. There is a line {{ compiler('cxx') }} included under dependecies. This is likely where something doesn't get installed/set correctly. A quick search indicates some use 'gxx_linux-64' instead of 'cxx', or some add conda-forge-pinning-feedstock compiler specification as a workaround. Adding build-essential package, to the dependencies list in meta.yaml file, that should likely take care of it too.
looo
Posts: 2742
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Postby looo » Thu Aug 29, 2019 2:30 pm

triplus wrote:
Thu Aug 29, 2019 1:59 pm
This is a toolchain related issue. I am not familiar with conda-forge but in general, in meta.yaml file there is a line {{ compiler('cxx') }} included. This is likely where something doesn't get installed/set correctly. A quick search indicates some use 'gxx_linux-64' instead of 'cxx', or some add conda-forge-pinning-feedstock compiler specification as a workaround. Adding build-essential package, to the dependencies list in meta.yaml, that should likely take care of it too.
Yes some more deps are needed. But the problem with g++ is simple because qt-build system doesn't use standards which conda-build assumes for these kind of builds. Build issues (most-likely) are related to the project itself and must be handled with bash-scrips (eg. like the posted line which is used for the qt-feedstock). I guess one of the problems here is that projects try to solve cross-plattform compiling with build-instructions instead of relying on (non existing) standards. This makes building of libraries often very frustrating.

Ranting about this topic doesn't solve the issue but I know diving into this will cost for sure more than 10h of work and 0.19_pre also has problems currently.

Maybe someone wants to make this a kind of paid job. I guess some people from conda-forge can do the job in less than 2h, but also need some motivation to start working on this.
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Fri Aug 30, 2019 11:21 am

I agree, that this is something, that doesn't need to happen. I was more or less asking on what is the current situation.

P.S. Just wondering, you gave a link to qt-feedstock, this i imagine is some general Qt 5 building related feedstock. Why therefore Qt 5 builds don't have a toolchain related issue on Linux and QWebKit does?
User avatar
Kunda1
Posts: 5149
Joined: Thu Jan 05, 2017 9:03 pm

Re: AppImages of v0.18 release builds

Postby Kunda1 » Wed Sep 04, 2019 3:18 am

JFYI, the appimage is almost 0.5GB
appimage-half-gig.png
appimage-half-gig.png (14.63 KiB) Viewed 203 times
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
looo
Posts: 2742
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Postby looo » Wed Sep 04, 2019 5:41 am

Kunda1 wrote:
Wed Sep 04, 2019 3:18 am
JFYI, the appimage is almost 0.5GB
We include a lot of extra python libraries like scipy, sympy, pandas to satisfy the never sattified users. The downside is a bigger size of the appimage. But hopefully less 'package xy does not work with freecad' topics will pop up. Therefore size does not matter that much.

Some optimization is for sure possible.
User avatar
Kunda1
Posts: 5149
Joined: Thu Jan 05, 2017 9:03 pm

Re: AppImages of v0.18 release builds

Postby Kunda1 » Wed Sep 04, 2019 11:56 am

:+1:
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Wed Sep 04, 2019 3:44 pm

I took a look and the embedded documentation issue is twofold. I resolved the first issue, by override hard-coded paths with qt.conf. And now pressing on F1 should open the Qt Assistant. The second problem is not as straightforward to resolve. AppImage works in a way, it mounts the AppImage under /tmp/random_location. The random_location is read-only and changes after each run. Qt Assistant will on the other hand take freecad.qhc and cache it in .local/share/freecad/freecad/freecad.qhc location. The main problem is that in this cached file, the absolute path to FreeCAD help files will get set on the first Qt Assistant run. The embedded documentation will work for the first time, but starting FreeCAD for the second time, Qt Assistant won't find the help files anymore.

Therefore what improved is people can now download documentation and set the path to it in Qt Assistant manually. That should work now. As for embedded documentation. A workaround would need to be figured out, to deal with the cache situation. I will investigate tomorrow, to see if anything sensible and straightforward can be done about it.
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Thu Sep 05, 2019 12:24 pm

@looo

Note that FreeCAD 0.18 package installed through Conda, or provided as AppImage, will experience crashes on newer Linux distributions, such as Fedora 30, due to an issue with libstdcxx-ng package. Should be fixed now in FreeCAD 0.18 AppImage and FreeCAD 0.19 AppImage already uses newer version by default.
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Wed Sep 11, 2019 10:23 am

Fingers crossed (embedded documentation):

https://forum.freecadweb.org/viewtopic. ... 51#p333451