Δημιουργία dll από lib

Συζητήσεις για γλώσσες προγραμματισμού και θέματα σχετικά με προγραμματισμό.
Post Reply
User avatar
Einherjar
Venus Project Founder
Venus Project Founder
Posts: 3751
Joined: Tue Jan 27, 2004 4:42 pm
Academic status: Alumnus/a
Gender:
Location: Washington DC, USA
Contact:

Δημιουργία dll από lib

Post by Einherjar » Fri May 06, 2005 11:43 am

έχω μια στατική βιβλιοθήκη (.lib). Μπορώ και αν ναι με ποιον τρόπο να τη μετατρέψω σε δυναμική βιβλιοθήκη (dll). Να σημειώσω ότι δεν έχω διαθέσιμο τον κώδικα της βιβλιοθήκης.
Ευχαριστώ πολύ
[Better to understand a little than to misunderstand a lot]
User avatar
AmmarkoV
Wow! Terabyte level
Wow! Terabyte level
Posts: 2838
Joined: Thu Nov 04, 2004 2:55 pm
Gender:
Location: Reloaded @ Santa Friday
Contact:

Post by AmmarkoV » Fri May 06, 2005 3:35 pm

Μμμ..!
Ψάχνοντας (googling) έχω βρεί εργαλεία μόνο από dll -> lib (όχι το ανάποδο)
Ορίστε ένα shareware.. DLL to Lib 1.26
HomePage

Τώρα το ανάποδο λογικά πρέπει να γίνεται..
Αφού όμως έχεις την lib για ποιό λόγο να την κάνεις dll , ούτως ή άλλως την δουλειά σου θα την κάνει και έτσι όπως είσαι τώρα..
Spoiler: εμφάνιση/απόκρυψη
I would love to change the world, but they won't give me the source code. Οι καθηγητές πληρώνονται από το δημόσιο αρα από όλους τους Έλληνες για να κάνουν τα μαθήματα. Όλοι οι Έλληνες θα έπρεπε να μπορούν να δουν τα μαθήματα τα οποία πληρώνουν! Tο πνευματικό έργο που επιτελείται με τα χρήματα του δημοσίου ΔΕΝ είναι μόνο δικό σας Όποιος δεν δίνει πανελλήνιες έχει δικαίωμα στην γνώση που πληρώνει [url=http://ammar.gr/gddg]gddg blog[/url]
Image
User avatar
Einherjar
Venus Project Founder
Venus Project Founder
Posts: 3751
Joined: Tue Jan 27, 2004 4:42 pm
Academic status: Alumnus/a
Gender:
Location: Washington DC, USA
Contact:

Post by Einherjar » Fri May 06, 2005 3:45 pm

το εργαλείο που λές το έχω δει αλλά, όπως καταλαβαίνεις, δε μου κάνει.
Θέλω να χρησιμοποιήσω τη βιβλιοθήκη με ένα java πρόγραμμα. Η java, απ'ότι ξέρω και έχω δει, δε φορτώνει lib παρά μόνο dll. Γι'αυτό θέλω αυτή τη μετατροπή.
[Better to understand a little than to misunderstand a lot]
User avatar
HdkiLLeR
Venus Project Founder
Venus Project Founder
Posts: 4356
Joined: Tue Jan 27, 2004 4:41 pm
Academic status: Alumnus/a
Gender:
Location: New York, NY
Contact:

Post by HdkiLLeR » Fri May 06, 2005 6:11 pm

Μόνο binaries έχεις;
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d-->--- s+:+ a- C++(+++) BILS++++$ P--- L++++>+++++ E--- W+++ N+ o+ K w--
O M+ V-- PS++>+++ PE- Y++ PGP++ t+ 5+ X+ R* tv b++ DI- D+ G+++ e+++>++++ h r++ y++
------END GEEK CODE BLOCK------

"UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." -- Dennis Ritchie
User avatar
Einherjar
Venus Project Founder
Venus Project Founder
Posts: 3751
Joined: Tue Jan 27, 2004 4:42 pm
Academic status: Alumnus/a
Gender:
Location: Washington DC, USA
Contact:

Post by Einherjar » Fri May 06, 2005 6:16 pm

δυστυχώς ναι
[Better to understand a little than to misunderstand a lot]
User avatar
HdkiLLeR
Venus Project Founder
Venus Project Founder
Posts: 4356
Joined: Tue Jan 27, 2004 4:41 pm
Academic status: Alumnus/a
Gender:
Location: New York, NY
Contact:

Post by HdkiLLeR » Fri May 06, 2005 6:37 pm

Να σου πώ την αλήθεια ποτέ δεν χρειάστηκε να κάνω κάτι τέτοιο οπότε δεν ξέρω/δεν έχω ψάξει. Παρεπιπτόντως το .lib σε τι είναι win32/c++ ;
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d-->--- s+:+ a- C++(+++) BILS++++$ P--- L++++>+++++ E--- W+++ N+ o+ K w--
O M+ V-- PS++>+++ PE- Y++ PGP++ t+ 5+ X+ R* tv b++ DI- D+ G+++ e+++>++++ h r++ y++
------END GEEK CODE BLOCK------

"UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." -- Dennis Ritchie
User avatar
Einherjar
Venus Project Founder
Venus Project Founder
Posts: 3751
Joined: Tue Jan 27, 2004 4:42 pm
Academic status: Alumnus/a
Gender:
Location: Washington DC, USA
Contact:

Post by Einherjar » Fri May 06, 2005 6:40 pm

Είναι win32 lib
[Better to understand a little than to misunderstand a lot]
User avatar
AmmarkoV
Wow! Terabyte level
Wow! Terabyte level
Posts: 2838
Joined: Thu Nov 04, 2004 2:55 pm
Gender:
Location: Reloaded @ Santa Friday
Contact:

Post by AmmarkoV » Fri May 06, 2005 9:38 pm

Συνήθως προχωρημένα εργαλεία βγαίνουν τόσο σε dll όσο και σε lib μορφή . έχεις δοκιμάσει να ψάξεις από εκεί που βρήκες το lib μήπως υπάρχει και σε dll μορφή? :roll:
Spoiler: εμφάνιση/απόκρυψη
I would love to change the world, but they won't give me the source code. Οι καθηγητές πληρώνονται από το δημόσιο αρα από όλους τους Έλληνες για να κάνουν τα μαθήματα. Όλοι οι Έλληνες θα έπρεπε να μπορούν να δουν τα μαθήματα τα οποία πληρώνουν! Tο πνευματικό έργο που επιτελείται με τα χρήματα του δημοσίου ΔΕΝ είναι μόνο δικό σας Όποιος δεν δίνει πανελλήνιες έχει δικαίωμα στην γνώση που πληρώνει [url=http://ammar.gr/gddg]gddg blog[/url]
Image
User avatar
Einherjar
Venus Project Founder
Venus Project Founder
Posts: 3751
Joined: Tue Jan 27, 2004 4:42 pm
Academic status: Alumnus/a
Gender:
Location: Washington DC, USA
Contact:

Post by Einherjar » Fri May 06, 2005 11:46 pm

κοίτα... το ψάξιμο και στο site που προέρχεται η βιβλιοθήκη αλλά και στο google δε θα μπορούσαν παρά να είναι στοιχειώδη βήματα που έκανα πριν ζητήσω βοήθεια. ;)
Θέλω να κάνω ακριβώς αυτό που ζητάω, αν γίνεται βέβαια :|
Εν τω μεταξύ βρήκα τρόπο να παρακάμψω το πρόβλημα καλώντας ένα πρόγραμμα που χρησιμοποιεί τη βιβλιοθήκη, αλλά αυτό δεν μπορεί να είναι παρα μια μπακάλικη λύση
[Better to understand a little than to misunderstand a lot]
User avatar
minas
byte level
byte level
Posts: 63
Joined: Mon May 03, 2004 2:22 pm
Location: Milky Way

Post by minas » Sat May 07, 2005 12:26 am

Μήπως αυτό βοηθάει :
Janne Naukkarinen wrote in message <6r0un3$4k...@tron.sci.fi>...
>Free or non-free tool to convert lib to dll direct, please?

There are two type of .lib file. One is used to provide a way to link to a
DLL (import library) and the other is a static library (it contains real
code). The only way I know of quickly distinguishing between the two is by
doing,

dumpbin /symbols <libfile>

Dumpbin is shipped as part of VC++. If you get a monster list of symbols out
then it is a static library. Does anybody know a better way?

If you have a static library then it is possible to convert this to a DLL by
supplying a def file to the VC++ linker like this,

link /def:<deffile> /dll /out:<dllfile> <libfile>

The deffile must contain a list of the symbols you want to use from dll/lib.
I have a program that will create a def file from a lib file for doing this
but it has some restrictions to do with exporting data. If you think it
might be useful drop me a line.

Hope that helps,
Kev.
User avatar
Einherjar
Venus Project Founder
Venus Project Founder
Posts: 3751
Joined: Tue Jan 27, 2004 4:42 pm
Academic status: Alumnus/a
Gender:
Location: Washington DC, USA
Contact:

Post by Einherjar » Sat May 07, 2005 12:49 am

ενδιαφέρουσες οι πληροφορίες! thanx!
Βρήκα το source code για ένα πρόγραμμα με όνομα lib2def που φτιάχνει αυτό το def file. όταν το φτιάξω θα δοκιμάσω με τον linker να δω τι θα βγεί
[Better to understand a little than to misunderstand a lot]
Post Reply

Return to “Προγραμματισμός”