powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Compiling PL/SQL Code for Native Execution
19 сообщений из 19, страница 1 из 1
Compiling PL/SQL Code for Native Execution
    #38184607
Фотография Sacramento
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сижу за компьютером Win7Проффессиональная, монитор Dell, 22 дюйма кажецо...
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

Решил поиграть с native compilation
startup upgrade
$ORACLE_HOME/rdbms/admin/dbmsupgnv.sql

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
Errors for PACKAGE SYS.DBMSNCDB:

LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0      PLS-00923: native compilation failed: Microsoft SDK not
         found::Could not open registry key      HKEY_USERS or
         HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\MicrosoftSDK\InstalledSDKsNo
         error



Ключа конешно такого не существует в помине, иначе это не была бы винда.
сергейбрин ничего толково не говорит, англоговорящие дба интеллигентно советуют провести компиляцию еще раз и включают мороз....

Если ктото сталкивалсо или встречал решение - поделитесь!
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184630
Galbarad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sacramento,
возможно у вас Microsoft SDK не установлено?
http://msdn.microsoft.com/en-us/dd299405.aspx
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184654
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SacramentoWin7Проффессиональная, монитор Dell
...
$ORACLE_HOME/rdbms/admin/dbmsupgnv.sql

Испытываю когнитивный диссонанс.
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184674
Фотография Sacramento
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousИспытываю когнитивный диссонанс.
а шо делать? Простой смертный розработчег выкроил тесемку и момент поставить на тазик свою базу ымитирующую общую

GalbaradSacramento,
возможно у вас Microsoft SDK не установлено?
http://msdn.microsoft.com/en-us/dd299405.aspx
Дома скочаю двд, завтро посмотрим что плюсец запоёт
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184688
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sacramento,

напоминаю:

http://www.sql.ru/forum/rules.aspx Содержание сообщений
Запрещается:
"Коверканье" слов русского языка.
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184690
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousSacramentoWin7Проффессиональная, монитор Dell
...
$ORACLE_HOME/rdbms/admin/dbmsupgnv.sql

Испытываю когнитивный диссонанс.
Да ладно Вам Андрей!
SQL*PLUS на винде все равно в какую сторону у тебя тюбетейка слэш
Он все находится и работает:
Код: plsql
1.
SQL> @ ?/rdbms/admin/utlrp
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184692
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim LejninSQL*PLUS на винде все равно в какую сторону у тебя тюбетейка слэшА доллары в рубли переводит по курсу ЦБ РФ?
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184694
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sacramento,

Если хочешь результата - действуй по официальной документации и не "коверкай" команды sqlplus.
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184703
Фотография Sacramento
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-Sacramento,

Если хочешь результата - действуй по официальной документации и не "коверкай" команды sqlplus.

согласно регламенту
http://docs.oracle.com/cd/B19306_01/appdev.102/b14261/tuning.htm#i48528

со страницы были скопипастены заголовок, путь в файло. Ошибка с плюсца
Очевидно все примеры в доке под линух.
Но мы явно не на то обращаем в топике внимание, э?
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184706
Фотография Sacramento
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
suPPLerнапоминаю:


лучше
"роди дочь. займись её воспитанием" (с Бегун)
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184714
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Vadim Lejninandrey_anonymousпропущено...

Испытываю когнитивный диссонанс.
Да ладно Вам Андрей!
SQL*PLUS на винде все равно в какую сторону у тебя тюбетейка слэш
Он все находится и работает:
Код: plsql
1.
SQL> @ ?/rdbms/admin/utlrp

да ничего страшного в этом нет, у меня везде так пути ради универсальности указаны. кроме того сама винда прекрасно умеет так:
Код: powershell
1.
2.
3.
C:\>cd C://windows/system32

C:\Windows\System32>cd /
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184717
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
7.
C:\>echo %ORACLE_HOME%
C:\app\oracle\product\11.2.0\client_1

C:\>echo $ORACLE_HOME
$ORACLE_HOME

C:\>
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184722
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
andrey_anonymous,

я про слеши говорил
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184819
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sacramento"роди дочь. займись её воспитанием" (с Бегун)

Принято, исправляюсь, мадемуазель: родите дочь, займитесь Вашим воспитанием. :)
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38184845
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SacramentoОшибка с плюсцану так там в доке разве не говорится, что и как надо настроить, прежде чем хвататься за sql?
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #38185616
Фотография Sacramento
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заседание продолжается, господа присяжные заседатели.

Downloaded & Installed

Взываемый плюсом куст HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\MicrosoftSDK\InstalledSDKsNo не появился,
зато появился [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs]

Раз гора не идет к Могомеду, пошли к горе. Куст из HKLM выгружен, подправлен руцями и загружен обратно как HKCU
Вчастности слово InstalledSDKsNo было добавлено и как раздел, и как параметр

В итоге имеем
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SQL> @c:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\dbmsncdb.sql

Warning: Package created with compilation errors.

Errors for PACKAGE SYS.DBMSNCDB:

LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0      PLS-00923: native compilation failed: Microsoft SDK not
         found::Could not open registry key      HKEY_USERS or
         HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\MicrosoftSDK\InstalledSDKsNo
         error


что говорит нам о том что круг сужается...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Compiling PL/SQL Code for Native Execution
    #39518926
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Многоходовочка оказалась не очень тривиальной.
Win 7, 64 bit.

0. Устанавливаем plsql_native_library_dir и пытаемся компилировать после "alter session set plsql_code_type='NATIVE';".

1. Заходим в ноту Native Compliation Fails with: PLS-00923: native compilation failed: Microsoft SDK not (Doc ID 865504.1)
и качаем, что там написано (удивительно ссылка по прежнему рабочая после стольких лет).
После установки MS Platform SDK нужный ключ появляется "HKEY_CURRENT_USER\Software\Microsoft\MicrosoftSDK\InstalledSDKs".

2. Заходим в ноту Pls-00923: Native Compilation Failed With 10.2 Database (Doc ID 370517.1) и делаем что там написано (впрочем, это достаточно очевидно и без ноты).
Идем в oracle home \plsql\spnc_commands, и прописываем конкретный путь вместо $(ORACLE_HOME).
В моем случае еще надо было полный путь до cl и добавить путь к библиотеке MSVCRT.lib через флаг компилятора /LIBPATH:.

В итоге в plsql_native_library_dir создаются файлы
Код: plaintext
1.
2.
3.
<pkg name>__<user name>__B__xxxxx.c
<pkg name>__<user name>__B__xxxxx.obj
<pkg name>__<user name>__B__xxxxx.lib
<pkg name>__<user name>__B__xxxxx.exp

Но итоговая dll не создается потому что оно не может распознать идентификаторы в header файлах в oracle home \plsql\include
Код: plaintext
1.
2.
<>.obj : error LNK2019: unresolved external symbol . pen_UNHNDLD  referenced in function .PEN_Ent_1
<>.obj : error LNK2019: unresolved external symbol . pen_search_excp  referenced in function .PEN_Ent_1
etc
Выделенное описано в \plsql\include\pen.h (сам хедер виден иначе бы ошибка была другая), но зарезолвить не удается.

Еще как вариант в \plsql\spnc_commands описано, что можно использовать GCC (MINGW) вместо cl, но с ним у меня возникло еще больше приключений
(при том, что он отлично справляется с компиляцией external procedures, но в том случае не надо извращаться с линковкой).
Короче, до конца квест не пройден.

Для коллекции
FAQ: PL/SQL Native Compilation (NCOMP) in Oracle Database 10g
Linker Tools Error LNK2019
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #39518940
Тут не хедер виноват, в нем прописано, а линкер
Эти символы (.pen_UNHNDLD) скорее всего определены в другой библиотеке, которую линкеру не указали.
...
Рейтинг: 0 / 0
Compiling PL/SQL Code for Native Execution
    #39518943
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в этом вашем вендовс не понимаю,

Если посмотреть cygwin в oracle home, в трех файлах имеется упоминание

Код: plaintext
1.
2.
3.
4.
$ grep -rn "pen_UNHNDLD" .
Binary file ./BIN/orapls10.dll matches
./plsql/include/pen.h:323:pevm_excs pen_UNHNDLD(void *ctx);
Binary file ./RDBMS/ADMIN/orapls10.sym matches

Подскажешь что надо сделать?
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Compiling PL/SQL Code for Native Execution
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]