Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1

TOPIC: Project Transfer

Project Transfer 2 months 2 weeks ago #10419

  • Snarf77
  • Snarf77's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 827
  • Karma: 0
Hello all,
I have a question propably for Claes but if anyone has the answer feel free to help !!

I'm trying to transfer one project from a development computer to another one for disk space issue. Both computer are running ubuntu 16.04 with proview5.5.

My procedure is the following one (could help anybody that wants to move a project):
- 1. Dump your root volume from source project
- 2. Gather from source project the following file:
  • /usr/pwrp/adm/db/pwr_projectlist.dat
  • /usr/pwrp/adm/db/pwr_volumelist.datl[/i]
  • /usr/local/pwrp/myproject/src/db/classvolume.wb_load
  • /usr/local/pwrp/myproject/src/db/rootvolume.wb_dmp
  • /usr/local/pwrp/myproject/src/db/directory.wb_load
  • /usr/local/pwrp/myproject/src/appl/any_external_cfile.c / rt_io_user.c / makefile (if external drivers are used)
  • /usr/local/pwrp/myproject/src/cnf/rootvolume_clone.pwr_com (if clone volume are used)
  • /usr/local/pwrp/myproject/src/prop/*.pwg *.pwsg
- 3. In new PC, create the proview project empty directory template (/bld/... /src/..)
- 4. Copy previous files in corresponding new directories
- 5. Add the rootvolume Id (in previous pwr_volumelist.dat) to your current pwr_volumelist.dat (or modify Id in corresponding rootvolume dump file is a modification is requried due to id conflict)
- 6. Add the project name (listed in previous pwr_pojectlist) to your new pwr_projectlist
- 7. Open Proview and start project
- 8. Save project (to recreate rootvolume directory ($pwrp_db/rootvolume.db)
- 9. Open Classsvolume (if any) / Save & Build (to recreate header file $pwrp_inc./classvolume.h)
- 10. recreate classvolume dbs file by wtt command: create snapshot /file:"$pwrp_db/classvolume.wb_load" /out:"$pwrp_load/classvolume.dbs"
- 11. Close Proview
- 12. open a terminal / sdf to project and navigate to $pwrp_db
- 13. delete whole directory content $pwrp_db/rootvolume.db (not the directory itself)
- 14. use reload.sh script to "loaddb" for your rootvolume
- 15. use reload.sh script to "createload file" and boot file
- 16. Open proview / Open project / Open Rootvolume
- 17. Activate "Option -> Settings -> Force" for the initial build
- 18. Build Volume / Build Node of your rootvolume
- 19. Clone volume if any and build them
- 20. Distribute your proview package

You re done !!!


This procedure usually works great but I have an issue with this project :
I receive an error when building the node:
%GSX-F-CCERRO, Error from C compiler or linker
/usr/bin/ld: cannot find -lplcf000_017_098_001

000_017_098_001 being my rootvolume ID.

This project makes use of lib cifx from Hilscher (SystemModule is selected and library installed in PC) in case this has an impact

If someone can help me to understand why I cant 't compile the node.

Thank you
Snarf
Last Edit: 2 months 2 weeks ago by Snarf77.
The administrator has disabled public write access.

Project Transfer 2 months 2 weeks ago #10421

  • claes
  • claes's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 2709
  • Thank you received: 357
  • Karma: 117
Hi Snarf,

Actually to copy the project to a node with the same platform you only have to copy the project tree and merge pwr_projectlist.dat and pwr_volumelist.dat.

$pwrp_lib/libpwrf000_017_098_001.a contains the compiled object modules for the plc program. It should be created when the volume is built, so enter the root volume and force a build and check that this file is created. Maybe you have to force a compile of all the plcpgm's first.


/Claes
The administrator has disabled public write access.

Project Transfer 2 months 2 weeks ago #10427

  • brunad
  • brunad's Avatar
  • OFFLINE
  • Gold Boarder
  • Posts: 222
  • Karma: 0
Hi Claes, Hi Snarf77

Just a comment:

Prowiewr is obviously great, but as an improvement it would be useful to a have a simple button with "import project" (from disc) and an other with "export project" (to disc), maybe a new object in project directory for instance, to hide all the machinery, reload and set automatically to new environment (I know, it smells a bit like a commercial OS), what do you think of this ?

/Bruno
The administrator has disabled public write access.

Project Transfer 2 months 2 weeks ago #10430

  • marc
  • marc's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 709
  • Karma: 0
Hi Bruno,

Your idea is great.
But....., I am in doubt if this tassel is worth the hassle.
It works with the same OS and if the necessary shared libraries already are installed.
What if a switch to another Linux distro is necessary?
What about 32/64 bit issues?
What about the updates (*.dbs files) to process/storage stations?
What about cross compiler issues?

Proview is powerful, flexible but complex.
I think that is "the price" we need to pay, not plug & pray.

/Marc
The administrator has disabled public write access.

Project Transfer 2 months 2 weeks ago #10431

  • AutoMate
  • AutoMate's Avatar
  • OFFLINE
  • Expert Boarder
  • Posts: 112
  • Karma: 0
As Marc points out, there are many variations that may be encountered. Simple Import / Export scripts could handle a limited number of cases, but would not handle all encountered. It does emphasize a deeper understanding of the database structure is key to understanding ProviewR, in general.

Different O/S, libraries, versions and cross-compiler issues aside, I usually copy a project folder (/usr/local/pwrp/myproject) along with pwr_projectlist.dat and pwr_volumelist.dat files to another machine at the same directory location.

Often, a targeted workstation will have other projects and Global Volume definitions already configured. In this case, care must be taken to carefully "merge" global volume definitions to coexist with all projects. Fortunately, when creating a new project with the same name on a new workstation, copied project files are not overwritten. If the new workstation has a different computer name than the original workstation, then the pwr Directory node name must be adjusted, too. Along with updating custom class modules, forced compiling, etc., there are many steps involved. A cheat sheet can help remember all of various adjustments required for more complex project moves. Maybe, a new video tutorial?
The administrator has disabled public write access.
The following user(s) said Thank You: marc

Project Transfer 2 months 2 weeks ago #10432

  • brunad
  • brunad's Avatar
  • OFFLINE
  • Gold Boarder
  • Posts: 222
  • Karma: 0
Hi guys,

You're right, that wasn't really a good idea !
(I like very much the expression "plug and pray")

Have a good day

/Bruno
Last Edit: 2 months 2 weeks ago by brunad.
The administrator has disabled public write access.
The following user(s) said Thank You: marc
  • Page:
  • 1
Time to create page: 6.462 seconds