|
||||||
| Forums FAQ | Members List | Search | Today's Posts | Mark Forums Read |
| ARCHIVES - 64-bit Questions specific to 64-bit systems running SUSE Linux
(Questions that apply to both 32-bit and 64-bit systems should be posted in the appropriate mixed architecture forums) |
|
|
|
LinkBack | Thread Tools | Display Modes |
|
|||
|
Hello, all!
I am new here, and looking for help. I built a new AMD Sempron (w/SuSE 10.0 x86_64) machine for my lab, and want to install National Instruments software to manage my PCI DAQ card. The problem? The NI-KAL module that I am trying to compile (upon which the rest of the installation seems to hinge) returns errors when I attempt a "make install" - error: ‘struct <anonymous>’ has no member named ‘pud’ along with a host of warnings. I am sorta a Linux newbie, but I have performed all the operations in NI-KAL's README files, such as "./configure" (as well as "make modules_prepare" and "make modules") and am baffled. I have been poking around the internets and it seems others have this trouble with 64-bit systems and 32-bit applications. Might this error be specific to SuSE 10.0? I am thinking of going back to 9.2, which has been vetted for non-64-bit NI software. . . |
|
|||
|
Quote:
I have National Instruments software running at work in a MS environment but not had experience using under Linux. (I know that NI do support Linux). |
|
|||
|
Quote:
|
|
|||
|
Quote:
Sorry, can't be any more help here. |
|
|||
|
Being x86-64 contains two sets of libraries lib & lib64, we need to pass compile flags to point the makefiles to the correct library. Two ways I know of are "linux32" & "-m32".
I recommend searching for both before starting example: man linux32; google/linux for "-m32", http://marc.theaimsgroup.com/?l=suse-amd64...mpile+32bit&q=b, etc. If we think of ./configure as a tool to prepare your system to get ready for the makefile, then think "./configure -m32". If you are in a hurry give it a go; but I recommend doing a little reading 1st. I see NI also has a forum... Let us know how it turns out... |
|
|||
|
Oh yes, there is another way, however it means editing the makefile for every instance of lib reference & pointing it to the correct lib. It is much easier to pass a compile flag.
Have fun. |
|
|||
|
Snake had a good point. If you still have issues, check the version of GCC you are using. May have to either upgrade or down grade for better compatability.
Cheers, Bandit |
|
|||
|
Thanks all!
Will take everything under advisement and try a few things. . . Oh, and it IS pretty fun. |
|
|||
|
Hmmmmm. Neither "linux32" nor "./configure -m32" seems to work. I think this might be a memory issue, perhaps? The code that the error message refers me to looks like this:
static inline pte_t *nNIKAL100_getKernelPageTableEntry(nLinux_mm* mm, void *address) { pgd_t *pgd; pmd_t *pmd; pgd = pgd_offset(mm, (nNIKAL100_tUPtr)address); pmd = pmd_offset(pgd, (nNIKAL100_tUPtr)address); nNIKAL100_compileTimeAssert(sizeof(pte_t) <= 16, "pte_t is larger then 128 bits!\n"); #ifdef nNIKAL100_kPTEOffsetKernel return pte_offset_kernel(pmd, (nNIKAL100_tUPtr)address); #else return pte_offset(pmd, (nNIKAL100_tUPtr)address); #endif } For the life of me, I can't tell what the "pud" referred to is. The nice lady at National Instruments says this: How are you? I am sorry I could not get back to you earlier; I have been in training all week. I did research your issue some more, and from what I've seen, even though SUSE 10 is not officially supported, it seems to be a Kernel issue. People who have had similar issues were using 2.6.10 and above, and using the 2.6.8 kernel seemed to work for them. You can give this a shot and see if it resolves the issue. Feel free to call or reply to this email if you have any questions. Have a great day! Perhaps it is the kernal I have? |
|
| Bookmarks |
| Thread Tools | |
| Display Modes | |
|
|