Solved

Unable to load an nlm generated using library "traditional libc"

Posted on 2003-11-29
11
434 Views
Last Modified: 2012-05-04
I am new to novell netware. I generated an nlm using code warrior tool using library package "libc". When I try to load the nlm on netware, it gives an error-"libd" must be loaded to load the nlm. I dont know what is "libd". Can you suggest me a solution?
0
Comment
Question by:lakshmi_karle
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 2
11 Comments
 
LVL 35

Expert Comment

by:ShineOn
ID: 9843091
Have you verified that all of the libraries are available?  There is a section in the Novell Developernet website that has a list of libraries that can be downloaded.  It might also be part of a service pack that you haven't applied to the server.

What version of NetWare are you running this on?  There are some libc calls in older versions if NetWare that required this libd to be loaded because they couldn't be included in the version of libc that could work with that kernel version, IIRC.  If you're writing an NLM using a relatively current NDK, you could be using some of those calls.  Since you are getting that error message, I would guess that is the case.

If you are running NetWare 4.x then you should seriously consider upgrading your NetWare to at least 5.1.  Upgrading to 6.x has more benefits and is actually a better deal, because you change from "server-based" user licensing to "user-based" user licensing, and you can add as many NetWare 6.x servers as you want, simply by downloading a free server license.

If you "can't" upgrade, then make sure you are using the latest available service pack.
0
 

Author Comment

by:lakshmi_karle
ID: 9848716
I have downloaded and included all the necessary libraries.
I am running netware version 6.5. So that is not the problem I suppose. I generated the nlm from code warrior tool. Will it cause any problem? I am using PDK version 5.0

-lakshmi
0
 
LVL 35

Accepted Solution

by:
ShineOn earned 125 total points
ID: 9850048
The current CodeWarrior is version 8.  The current PDK for CodeWarrior is 5.1.  The libraries for CodeWarrior download page mentions CodeWarrior 7 and PDK 4.  I don't think you should be experiencing a problem related to the PDK, if you're using 5.1.

Perhaps the problem is using "traditional libc" option.  I don't know.  Like I said, last time I remember anything to do with libd it was because of the changes they were making in the libraries for C for the newer kernels.  That was a long time ago.

You might want to check out some of the documentation available about building NLMs at http://www.gknw.com/nwlinks.html

It's been a few years since I did any NLM programming, so I can't help further than that.
0
SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

 
LVL 35

Expert Comment

by:ShineOn
ID: 9850052
I said "I don't think you should be experiencing a problem related to the PDK, if you're using 5.1."

I meant to say 5.0.  Sorry...
0
 
LVL 35

Expert Comment

by:ShineOn
ID: 9850068
By the way, I'm glad you're using NetWare 6.5.  I only made the comments about earlier versions and upgrading because it has been years since I've seen anything related to libd.

Do you perhaps have a line of code that mentions libd instead of libc as a miskey?  Just a thought...
0
 
LVL 8

Expert Comment

by:waybadmojo
ID: 9863185
I'm not familiar with CodeWarrior at all so unless LIBD is a tool to run your custom code, I'm going with the miskey as well. I've never run across any references to Netware using LIBD. Double-check your code and look for a reference to LIBD and change it to LIBC and see if your error goes away.
0
 
LVL 35

Expert Comment

by:ShineOn
ID: 9863196
I remember in devnotes a few years back when NetWare 5 was being developed, that certain functions couldn't be included in the c libs for the older kernels.  Maybe I'm mixing things up a tad.  Perhaps it was having both a CLIB.NLM and a LIBC.NLM, or some such.  So much for long-term memory. ;)
0
 

Author Comment

by:lakshmi_karle
ID: 9864914
Hi all,
thanks for ur advice. My problem is resolved. While generating an nlm, codewarrior generates a file called app.def. There was one statement in the command "Module libc.nlm libd.nlm".I commented out this statement. This action served the purpose. The error regarding libd is not there now. But I have new problem. Could you please tell me how to write userdefined shared library? I mean how to handle writing and where to store the library in detail. I am new to novell netware. I am not able to load my nlm again because of a shared library.
Thanks in advance,
-lakshmi
0
 
LVL 35

Expert Comment

by:ShineOn
ID: 10012883
lakshmi_karle -

It seems we were able to help with your original quesiton.  Please see http://www.experts-exchange.com/help.jsp for info on how to close a question.

Your new problem should be posted as a new question, even though it may be an offshoot of the original question.

Thanks.
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
DOCS Open - how to unlock file? 4 849
inter vlan communication 4 432
Fix for net.exe -unable to Locate component 7 804
Novell and Groupwise keeps abending 2 740
Active Directory security has been a hot topic of late, and for good reason. With 90% of the world’s organization using this system to manage access to all parts of their IT infrastructure, knowing how to protect against threats and keep vulnerabil…
Read our guide on how to survive being on-call.
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

735 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question