- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: link-error, can't get an exe-file
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-18-2011 03:12 AM
тАО02-18-2011 03:12 AM
link-error, can't get an exe-file
The linker reports and exits:
%ILINK-E-IMEXP0, generated image, at least a short data segment, exceeds the P0 address space
Any advice how to get the exe-file?
Eberhard
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-18-2011 04:10 AM
тАО02-18-2011 04:10 AM
Re: link-error, can't get an exe-file
Hardware, software version, patch level?
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-18-2011 04:20 AM
тАО02-18-2011 04:20 AM
Re: link-error, can't get an exe-file
HP Fortran V8.2-104939-50H96
HP C V7.3-018 on OpenVMS IA64 V8.3-1H1
eberhard
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-18-2011 04:53 AM
тАО02-18-2011 04:53 AM
Re: link-error, can't get an exe-file
May we assume you used to be able to build it?
Can you still build it using prior versions?
Does it generate a map when requested?
Study it! Many little things being rounded up to pages?
If need be you'll have to study the map and see whether the prior version were 'close' to the edge (3fffffff), and a little bit more caused a problem or whether a new module cause a major impact.
New code with large STATIC / COMMON data added? Maybe that data has to go to P2 space somehow?
I hazard to guess that you may have to start playing with linker options like CLUSTER and COLLECT to group stuff.
Hope this helps some.
HB to the rescue (once we know more!)
Hein
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-18-2011 04:56 AM
тАО02-18-2011 04:56 AM
Re: link-error, can't get an exe-file
It's not easy to give a general advice. You may get away with some tweaking in linker options and qualifiers. That works if the generated image just needs a couple of pages. But it doesn't say much about running the image, where you may run into problems with allocating heap. You may need to move some image segments out of P0.
Have a look at the /segment qualifier, try to use a smaller /bpage value, try to avoid clusters, try to minimize the generation of image segments.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-18-2011 12:56 PM
тАО02-18-2011 12:56 PM
Re: link-error, can't get an exe-file
Find some larger data psects that can be dynamically created in P2 space ... with some code changes,
/Guenther
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-20-2011 01:27 PM
тАО02-20-2011 01:27 PM
Re: link-error, can't get an exe-file
How many fortran and c-subroutines? How large are your arrays and do you use multiple separate arrays when you could use one or two global arrays? Will you always use all of the data structures or can you dynamically allocate memory when you need it?
Will you always be calling all routines? If not then maybe split some out into multiple shareable images. Note that I say "multiple", that's because if you had just two you would start running with one and then dynamically activate the second, leaving you probably in a similar position to now.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО02-20-2011 02:47 PM
тАО02-20-2011 02:47 PM
Re: link-error, can't get an exe-file
<<<
Lookss like a code change. And, I suspect this will only help if the memory is dynamically allocated in non-P0 space.
>>> Note that I say "multiple", that's because if you had just two you would start running with one and then dynamically activate the second, leaving you probably in a similar position to now.
<<<
Even just one can work if you move it to non-P0 space. And, shareable images are compressed, so using them can save some pages in the same way as I suggested before.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-08-2011 01:30 AM
тАО03-08-2011 01:30 AM
Re: link-error, can't get an exe-file
It turns out that large arrays produce this error. In order to move them to the 64bit address space you have to add directives:
CDEC$ ATTRIBUTES ADDRESS64::x
real*8 x(20000,20000)
If learnt that it is very easy to move common blocks by the method mentioned above:
CDEC$ ATTRIBUTES ADDRESS64::xcom
real*8 x
common /xcom/ x(20000,20000),y(200000)
There is no need to define x and y in the 64 bit address space in the directives.
eberhard
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-08-2011 07:22 AM
тАО03-08-2011 07:22 AM