AppImages of v0.18 release builds

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

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.
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Post by looo »

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
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

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
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: AppImages of v0.18 release builds

Post by Kunda1 »

JFYI, the appimage is almost 0.5GB
appimage-half-gig.png
appimage-half-gig.png (14.63 KiB) Viewed 1648 times
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Post by looo »

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
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: AppImages of v0.18 release builds

Post by Kunda1 »

:+1:
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

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
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

@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
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

Fingers crossed (embedded documentation):

https://forum.freecadweb.org/viewtopic. ... 51#p333451
catman
Posts: 412
Joined: Fri Jan 11, 2019 10:42 pm

Re: AppImages of v0.18 release builds

Post by catman »

triplus wrote: Wed Sep 04, 2019 3:44 pm Therefore what improved is people can now download documentation and set the path to it in Qt Assistant manually. That should work now.
I am using the 0.19.19323 AppImange and would like to include some older help files I have downloaded. I did not found out how to change the path to the QT Assistent. Under Win7x64 (using 0.19 18990) I got a dialog where I could enter the path. In Linux I am getting this
2020-01-22_HelpFileErrorAppImage_0.19.png
2020-01-22_HelpFileErrorAppImage_0.19.png (18.21 KiB) Viewed 1271 times
Where can I find more info on how to set this path?

OS: Ubuntu 18.04.3 LTS (XFCE/xubuntu)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.19323 (Git) AppImage
Build type: Release
Branch: master
Hash: 1b198453b8eb6aa2eaca4e4be4b49fee74e9de6e
Python version: 3.8.1
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/United States (en_US)
Post Reply