Would you like to react to this message? Create an account in a few clicks or log in to continue.

You are not connected. Please login or register

For build howto

3 posters

Go down  Message [Page 1 of 1]

1For build howto Empty For build howto Sat Jan 02, 2021 8:25 am

dvarkin



Hi
I'm a newbie in building big projects not from Debian sources, and I want to note some aspects for other beginners after I recently built 0.5.15-RC3 on linux from repo:

1) Download trunk sources
$ bzr clone lp:simulide

2) make
$ cd simulide/build_XX/
$ qmake
$ make all

I had to install (on Debian) this packages:
- Qt5 modules: qtmultimedia5-dev, qtscript5-dev, libqt5svg5-dev (availability was fast checked by qmake, some other Qt5 dev tools was already installed)
- libelf-dev (src/simavr/sim/read_elf.c:27:10) with qttools5-dev-tools (Makefile:1781: runLrelease) - this builddeps was found durning make What a Face

UPD 10 Jan 2002: + libqt5serialport5-dev



Last edited by dvarkin on Mon Jan 10, 2022 7:09 pm; edited 1 time in total

arcachofo and julio.angulo like this post

https://vk.com/dvarkin

2For build howto Empty Compilation failure Wed May 19, 2021 2:44 am

julio.angulo



Hello @dvarkin

I want to contribuite to simulIDE.
I run the steps you specified but I got next errors:
Code:

qt5/QtScript -isystem /usr/include/x86_64-linux-gnu/qt5/QtConcurrent -isystem /usr/include/x86_64-linux-gnu/qt5/QtSerialPort -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -Ibuild/moc -I. -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -o build/objects/mcudataspace.o ../src/mcusim/mcudataspace.cpp
In file included from ../src/mcusim/mcudataspace.cpp:20:
../src/mcusim/mcudataspace.h:131:14: error: ‘vector’ in namespace ‘std’ does not name a template type
  131 |         std::vector<uint16_t> m_addrMap;           // Maps addresses in Data space
      |              ^~~~~~
../src/mcusim/mcudataspace.h:27:1: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’?
   26 | #include "mcutypes.h"
  +++ |+#include <vector>
   27 |
../src/mcusim/mcudataspace.h:132:14: error: ‘vector’ in namespace ‘std’ does not name a template type
  132 |         std::vector<uint8_t>  m_dataMem;           // Whole Ram space including Registers
      |              ^~~~~~
../src/mcusim/mcudataspace.h:132:9: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’?
  132 |         std::vector<uint8_t>  m_dataMem;           // Whole Ram space including Registers
      |         ^~~
../src/mcusim/mcudataspace.h:139:14: error: ‘vector’ in namespace ‘std’ does not name a template type
  139 |         std::vector<uint8_t> m_sreg;               // STATUS Reg splitted in bits
      |              ^~~~~~
../src/mcusim/mcudataspace.h:139:9: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’?
  139 |         std::vector<uint8_t> m_sreg;               // STATUS Reg splitted in bits
      |         ^~~
../src/mcusim/mcudataspace.h: In member function ‘uint8_t* DataSpace::getRam()’:
../src/mcusim/mcudataspace.h:46:36: error: ‘m_dataMem’ was not declared in this scope
   46 |         uint8_t* getRam() { return m_dataMem.data(); }  // Get pointer to Ram data
      |                                    ^~~~~~~~~
../src/mcusim/mcudataspace.h: In member function ‘uint16_t DataSpace::getMapperAddr(uint16_t)’:
../src/mcusim/mcudataspace.h:47:58: error: ‘m_addrMap’ was not declared in this scope
   47 |         uint16_t getMapperAddr( uint16_t addr ) { return m_addrMap[addr]; } // Get mapped addresses in Data space
      |                                                          ^~~~~~~~~
../src/mcusim/mcudataspace.h: In member function ‘uint8_t* DataSpace::getReg(QString)’:
../src/mcusim/mcudataspace.h:53:19: error: ‘m_dataMem’ was not declared in this scope
   53 |         { return &m_dataMem[m_regInfo.value( reg ).address]; }
      |                   ^~~~~~~~~
../src/mcusim/mcudataspace.h: In member function ‘regBits_t DataSpace::getRegBits(QString)’:
../src/mcusim/mcudataspace.h:120:28: error: ‘m_dataMem’ was not declared in this scope
  120 |             regBits.reg = &m_dataMem[regAddr];
      |                            ^~~~~~~~~
../src/mcusim/mcudataspace.cpp: In destructor ‘DataSpace::~DataSpace()’:
../src/mcusim/mcudataspace.cpp:32:5: error: ‘m_dataMem’ was not declared in this scope
   32 |     m_dataMem.clear();
      |     ^~~~~~~~~
../src/mcusim/mcudataspace.cpp: In member function ‘void DataSpace::initialize()’:
../src/mcusim/mcudataspace.cpp:37:16: error: ‘m_dataMem’ was not declared in this scope
   37 |     std::fill( m_dataMem.begin(), m_dataMem.end(), 0 );
      |                ^~~~~~~~~
../src/mcusim/mcudataspace.cpp:38:16: error: ‘m_sreg’ was not declared in this scope
   38 |     std::fill( m_sreg.begin(), m_sreg.end(), 0 );
      |                ^~~~~~
../src/mcusim/mcudataspace.cpp: In member function ‘uint8_t DataSpace::readReg(uint16_t)’:
../src/mcusim/mcudataspace.cpp:50:51: error: ‘m_dataMem’ was not declared in this scope
   50 |     if( regSignal ) regSignal->on_read.emitValue( m_dataMem[addr] );
      |                                                   ^~~~~~~~~
../src/mcusim/mcudataspace.cpp:52:12: error: ‘m_dataMem’ was not declared in this scope
   52 |     return m_dataMem[addr];
      |            ^~~~~~~~~
../src/mcusim/mcudataspace.cpp: In member function ‘void DataSpace::writeReg(uint16_t, uint8_t)’:
../src/mcusim/mcudataspace.cpp:64:5: error: ‘m_dataMem’ was not declared in this scope
   64 |     m_dataMem[addr] = v;
      |     ^~~~~~~~~
../src/mcusim/mcudataspace.cpp: In member function ‘void DataSpace::readStatus(uint8_t)’:
../src/mcusim/mcudataspace.cpp:70:36: error: ‘m_sreg’ was not declared in this scope
   70 |     for( int i=0; i<8; i++ ) { if( m_sreg[i] ) val |= 1<<i; }
      |                                    ^~~~~~
../src/mcusim/mcudataspace.cpp:71:5: error: ‘m_dataMem’ was not declared in this scope
   71 |     m_dataMem[m_sregAddr] = val;
      |     ^~~~~~~~~
../src/mcusim/mcudataspace.cpp: In member function ‘void DataSpace::writeStatus(uint8_t)’:
../src/mcusim/mcudataspace.cpp:76:30: error: ‘m_sreg’ was not declared in this scope
   76 |     for( int i=0; i<8; i++ ) m_sreg[i] = v & (1<<i);
      |                              ^~~~~~
make: *** [Makefile:11335: build/objects/mcudataspace.o] Error 1

I guess I'm doing something wrong but I want to confirm if it's maybe a
common mistake.

Thanks in advance

julio.angulo



Nevermind
I changed to branch lp:simulide/0.4.15
Code:

bzr branch lp:simulide/0.4.15

But I have a question what's the difference between the two branches:
simulide and simulide/0.4.15?
looks like simulide contains more files but it doesn't compile.

4For build howto Empty Re: For build howto Mon Jan 10, 2022 7:00 pm

dvarkin



julio.angulo wrote:Nevermind
I changed to branch lp:simulide/0.4.15
Code:

bzr branch lp:simulide/0.4.15

But I have a question what's the difference  between the two branches:
simulide and simulide/0.4.15?
looks like simulide contains more files but it doesn't compile.


Hello @julio.angulo!
"simulide" branch is pretty old, IMHO it's for stable distributions.
Use branches with versions that you interested in: now 0.4.15 and 1.0.0

https://vk.com/dvarkin

5For build howto Empty Re: For build howto Mon Mar 28, 2022 9:02 am

n3645



I have tried to compile project on fresh KDE distro, but many things missing...

Is there a definite "How To" documentation?

What I have found is this on the website, but that is necessary to run application only :
Code:

sudo apt-get install libqt5core5a libqt5gui5 libqt5xml5 libqt5svg5 libqt5widgets5 libqt5concurrent5 libqt5multimedia5 libqt5multimedia5-plugins libqt5serialport5 libqt5script5 libelf1

Not enough to build the project from source. I have some QT libs, but qmake complains that this also missing: "Project ERROR: Unknown module(s) in QT: core gui svg xml script widgets concurrent serialport multimedia"

Etc. I have not found anything in readme files. It would be very useful to have one or several commands to install all dependencies on fresh distro, from qmake, on.

Thanks.



Last edited by n3645 on Tue Mar 29, 2022 3:52 am; edited 1 time in total

6For build howto Empty Re: For build howto Mon Mar 28, 2022 5:19 pm

n3645



I have performed this:

Code:

sudo apt install get install qt5-qmake
sudo apt install qt5-default qtchooser-dbgsym
sudo apt-get install libqt5svg5-dev libqt5svg5-dbgsym libqt5serialport5-dev qtpositioning5-dev

Only multimedia module left, however I have no idea what is necessary to add in order to complete module list. I have tried several suggestions I have manage to find, but nothing was helpful.

7For build howto Empty Re: For build howto Tue Mar 29, 2022 3:51 am

n3645



This have solved the last problem:

Code:
sudo apt install qtmultimedia5-dev libqt5multimediawidgets5 libqt5multimedia5-plugins libqt5multimedia5

Compilation and build then was successfull.

Sponsored content



Back to top  Message [Page 1 of 1]

Permissions in this forum:
You cannot reply to topics in this forum