[Call For Testing] Test GCC 8.2 & new libopencm3

More
05 Jan 2019 07:58 #72207 by csujun
Switching compiler and libopencm3 is considering very risky. The current compiler and libopencm3 we are using is too old, which are out of its support life. It is time to switch to new compiler and new lib. One immediate benefit is the ROM size get reduced by the new compiler to free up some space on Devo7E.

I build the firmware based on today's master (1/5/2019) with the new compiler and new library. You can find the firmware for your Tx here:
www.deviationtx.com/downloads-new/catego...-csujun-test-gcc-8-2

Please focus on the general usage of your Tx to see if anything is broken.

There is no function difference than the master. I already verified the firmware with my Tx. But I need more widely testing before I can merge the change. Let me know if your Tx firmware is not there.

Know Issue:
[Devo7e] SBUS and CRSF protocol is broken due to a bug in UART send code. see issue here: github.com/DeviationTX/deviation/issues/484

Some recent changes in master may be interesting to you, which are included in this build as well.
1. Scanner support for 10/12e.
2. New format of localization file which enables faster language switch.
3. At9 get bigger font 15pt.
4. new protocols like NCC-1701

Thanks,

Howard Su

Please Log in or Create an account to join the conversation.

More
05 Jan 2019 16:50 #72209 by 52dgj
DEVO12,Unlimited restart

DEVO12,DEVO8S,DEVO7E,DEVO10,Taranis QX7,FS-i6

Please Log in or Create an account to join the conversation.

More
06 Jan 2019 11:22 #72212 by csujun
I need errors.txt. Can u share it?

Please Log in or Create an account to join the conversation.

More
06 Jan 2019 13:48 #72214 by 52dgj
你还是加下deviation的讨论群吧,这样我好发文件给你

DEVO12,DEVO8S,DEVO7E,DEVO10,Taranis QX7,FS-i6
Attachments:

Please Log in or Create an account to join the conversation.

More
23 Jan 2019 08:05 - 23 Jan 2019 08:06 #72488 by wind10071
Replied by wind10071 on topic [Call For Testing] Test GCC 8.2 & new libopencm3
run: docker start -i deviation_build
like to build.
Window error

Why did it prompt an error?
Attachments:
Last edit: 23 Jan 2019 08:06 by wind10071.

Please Log in or Create an account to join the conversation.

More
23 Jan 2019 08:12 #72489 by csujun
Should relate to the change on GCC version. Let me check the docker script.

Please Log in or Create an account to join the conversation.

More
23 Jan 2019 15:37 - 23 Jan 2019 15:40 #72500 by gdenton
Doesn't work for me now...

Is there a way to reverse changes to Windows Docker build environment?
Last edit: 23 Jan 2019 15:40 by gdenton.

Please Log in or Create an account to join the conversation.

More
23 Jan 2019 19:54 #72507 by wind10071
Replied by wind10071 on topic [Call For Testing] Test GCC 8.2 & new libopencm3
Thank you csujun !
Now the build deviation is back to normal!

Please Log in or Create an account to join the conversation.

More
23 Jan 2019 20:52 #72508 by gdenton

wind10071 wrote: Thank you csujun !
Now the build deviation is back to normal!


So yours is working now?
I just tried again and still getting same errors.

Please Log in or Create an account to join the conversation.

More
24 Jan 2019 01:34 #72511 by gdenton
Windows 10
local clone copy of deviationtx

I finally figured out that I had to delete the existing image/container, re-download the Deviation build environment and re-create the Docker container.
I then had the following error after starting a build:

fatal: destination path 'src/libopencm3' already exists and is not an empty directory.
Clone of ' github.com/DeviationTx/libopencm3.git ' into submodule path 'src/libopencm3' failed

I deleted src/libopencm3, re-started the build and it succeeded.

Please Log in or Create an account to join the conversation.

More
24 Jan 2019 07:33 #72512 by wind10071
Replied by wind10071 on topic [Call For Testing] Test GCC 8.2 & new libopencm3
Yes, delete the existing image/container, re-download the Deviation build environment and re-create the Docker container.

1 View all containers:
docker ps -a

2 Stop container:
docker stop id

3 Delete container:
docker rm id

4View existing image:
docker images

5 Delete existing image:
docker rmi ID

6 exit

All over again

Please Log in or Create an account to join the conversation.

More
10 Mar 2019 11:54 #73299 by openuas
Fully agree, risky indeed but well appreciated. The choice for gcc v8.2 is there a specific philosophy or is it an idea to use GCC 8.3 since that is the bugfix release of 8.2? and for libopencm3 a specific tag or reason to use the one?

Will test on various TX's if we can find some time.. but only ground test for time being.

Please Log in or Create an account to join the conversation.

More
11 Mar 2019 20:36 #73308 by daniel.snowsurf
Replied by daniel.snowsurf on topic [Call For Testing] Test GCC 8.2 & new libopencm3
Ubuntu 18.04
I get an error:
daniel@ubuntu:~/deviationtx/deviation$ docker start -i deviation_build
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 14157  100 14157    0     0    99k      0 --:--:-- --:--:-- --:--:--  101k
Updating build.py
Building zip_devo7e
Preparing for ARM build
make[1]: *** No rule to make target `clean'.  Stop.
make: *** [distclean] Error 2
Fetch libopencm3 via 'git submodule update --init'
make[1]: *** [libopencm3/lib/libopencm3_stm32f1.a] Error 1
make: *** [zip_devo7e] Error 2
I have already removed deviation container and image as explained before. The source is freshly cloned with git.

Please Log in or Create an account to join the conversation.

More
11 Mar 2019 21:15 #73310 by yets
I had the same exact issue when I spent a week trying to build from a local copy on Windows. Moeder directed me to to go to the Libopencm3 folder, start a bash and type "make". www.deviationtx.com/forum/7-development/...k-building?start=100

I had to delete the container, "make" in the folder and then create container again and it worked. I would have posted all my troubles in this thread had I known about it earlier

Please Log in or Create an account to join the conversation.

More
12 Mar 2019 20:30 #73318 by daniel.snowsurf
Replied by daniel.snowsurf on topic [Call For Testing] Test GCC 8.2 & new libopencm3
Thanks for the tip yets.
When trying to make libopencm3 I realized the folder was empty. When cloning deviationtx the libopencm3 is not cloned. I have cloned libopencm3 from deviationtx and now it builds. But I get an error when building the filesystem:
...
 + Compiling 'pages/128x64x1/advanced/mixer_setup.c'
 + Building 'devo7e.elf'
 + Optimizing placement and re-linking
ROM: 0x08003000 - 0x0801eac0 = 110.69kB
RAM: 0x20000000 - 0x20002f98 =  11.90kB
STK: 0x20002f98 - 0x20004000 =   4.10kB
Found 13 ranges
Found 10 ranges
 + Copying template files for devo7e
Traceback (most recent call last):
  File "../utils/extract_strings.py", line 296, in <module>
    sys.exit(0 if main() else 1)
  File "../utils/extract_strings.py", line 59, in main
    args.targets, language, translation):
  File "../utils/extract_strings.py", line 192, in write_lang_file
    _fh.write(language)
UnicodeEncodeError: 'ascii' codec can't encode character '\ufeff' in position 0: ordinal not in range(128)
make[1]: *** [filesystem/devo7e/models/model30.ini] Error 1
make: *** [zip_devo7e] Error 2

Please Log in or Create an account to join the conversation.

More
12 Mar 2019 20:41 #73319 by yets
My knowledge on dockers etc is very limited. Did you change any files in src before compiling?

Please Log in or Create an account to join the conversation.

More
13 Mar 2019 08:53 - 13 Mar 2019 08:57 #73332 by Moeder
That is an issue due to recent code changes. Is this with current master? A fix is in the making.
Last edit: 13 Mar 2019 08:57 by Moeder.

Please Log in or Create an account to join the conversation.

More
13 Mar 2019 19:38 #73338 by daniel.snowsurf
Replied by daniel.snowsurf on topic [Call For Testing] Test GCC 8.2 & new libopencm3
Yets - No changes, first thing is to get deviation build, then start with the changes (mainly extended telemetry for Devo7e).
Moeder - I'll wait for the fix, but I'll also try to build without docker. I've never liked docker... All this changes with libopencm3 and the files structure in targets are getting me crazy. Three weeks trying to build deviation and getting different errors every time.

Thanks for your support.

Please Log in or Create an account to join the conversation.

More
13 Mar 2019 20:10 - 13 Mar 2019 20:10 #73339 by Moeder
Please have a little patience. There has been LOTS of code movements in the last couple of weeks (just check the commit log), most of the regressions have been sorted out, but some might reappear. But we now have a better codebase to support future transmitters. Also, a lot of ROM has been freed up in devo7e. If you're using Ubuntu, getting the current gcc-arm-none-eabi-8-2018-q4-major is probably all you really need to compile your own devo7e builds.
Last edit: 13 Mar 2019 20:10 by Moeder.

Please Log in or Create an account to join the conversation.

More
14 Mar 2019 21:55 #73359 by daniel.snowsurf
Replied by daniel.snowsurf on topic [Call For Testing] Test GCC 8.2 & new libopencm3
I got it built with GCC, without docker, using the same files that yesterday were giving errors. Thanks for the support, and for developping deviation.

Please Log in or Create an account to join the conversation.

Time to create page: 0.090 seconds
Powered by Kunena Forum